home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2002 #11 / Amiga Plus CD - 2002 - No. 11.iso / Tools / Development / libogg / libvorbis-1.0rc3 / aclocal.m4 < prev    next >
Encoding:
M4 Source File  |  2002-10-27  |  120.4 KB  |  3,712 lines

  1. dnl aclocal.m4 generated automatically by aclocal 1.4-p4
  2.  
  3. dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
  4. dnl This file is free software; the Free Software Foundation
  5. dnl gives unlimited permission to copy and/or distribute it,
  6. dnl with or without modifications, as long as this notice is preserved.
  7.  
  8. dnl This program is distributed in the hope that it will be useful,
  9. dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
  10. dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
  11. dnl PARTICULAR PURPOSE.
  12.  
  13. # acinclude.m4
  14. # all .m4 files needed that might not be installed go here
  15.  
  16. # Configure paths for libogg
  17. # Jack Moffitt <jack@icecast.org> 10-21-2000
  18. # Shamelessly stolen from Owen Taylor and Manish Singh
  19.  
  20. dnl AM_PATH_OGG([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
  21. dnl Test for libogg, and define OGG_CFLAGS and OGG_LIBS
  22. dnl
  23. AC_DEFUN(AM_PATH_OGG,
  24. [dnl 
  25. dnl Get the cflags and libraries
  26. dnl
  27. AC_ARG_WITH(ogg,[  --with-ogg=PFX   Prefix where libogg is installed (optional)], ogg_prefix="$withval", ogg_prefix="")
  28. AC_ARG_WITH(ogg-libraries,[  --with-ogg-libraries=DIR   Directory where libogg library is installed (optional)], ogg_libraries="$withval", ogg_libraries="")
  29. AC_ARG_WITH(ogg-includes,[  --with-ogg-includes=DIR   Directory where libogg header files are installed (optional)], ogg_includes="$withval", ogg_includes="")
  30. AC_ARG_ENABLE(oggtest, [  --disable-oggtest       Do not try to compile and run a test Ogg program],, enable_oggtest=yes)
  31.  
  32.   if test "x$ogg_libraries" != "x" ; then
  33.     OGG_LIBS="-L$ogg_libraries"
  34.   elif test "x$ogg_prefix" != "x" ; then
  35.     OGG_LIBS="-L$ogg_prefix/lib"
  36.   elif test "x$prefix" != "xNONE" ; then
  37.     OGG_LIBS="-L$prefix/lib"
  38.   fi
  39.  
  40.   OGG_LIBS="$OGG_LIBS -logg"
  41.  
  42.   if test "x$ogg_includes" != "x" ; then
  43.     OGG_CFLAGS="-I$ogg_includes"
  44.   elif test "x$ogg_prefix" != "x" ; then
  45.     OGG_CFLAGS="-I$ogg_prefix/include"
  46.   elif test "x$prefix" != "xNONE"; then
  47.     OGG_CFLAGS="-I$prefix/include"
  48.   fi
  49.  
  50.   AC_MSG_CHECKING(for Ogg)
  51.   no_ogg=""
  52.  
  53.  
  54.   if test "x$enable_oggtest" = "xyes" ; then
  55.     ac_save_CFLAGS="$CFLAGS"
  56.     ac_save_LIBS="$LIBS"
  57.     CFLAGS="$CFLAGS $OGG_CFLAGS"
  58.     LIBS="$LIBS $OGG_LIBS"
  59. dnl
  60. dnl Now check if the installed Ogg is sufficiently new.
  61. dnl
  62.       rm -f conf.oggtest
  63.       AC_TRY_RUN([
  64. #include <stdio.h>
  65. #include <stdlib.h>
  66. #include <string.h>
  67. #include <ogg/ogg.h>
  68.  
  69. int main ()
  70. {
  71.   system("touch conf.oggtest");
  72.   return 0;
  73. }
  74.  
  75. ],, no_ogg=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
  76.        CFLAGS="$ac_save_CFLAGS"
  77.        LIBS="$ac_save_LIBS"
  78.   fi
  79.  
  80.   if test "x$no_ogg" = "x" ; then
  81.      AC_MSG_RESULT(yes)
  82.      ifelse([$1], , :, [$1])     
  83.   else
  84.      AC_MSG_RESULT(no)
  85.      if test -f conf.oggtest ; then
  86.        :
  87.      else
  88.        echo "*** Could not run Ogg test program, checking why..."
  89.        CFLAGS="$CFLAGS $OGG_CFLAGS"
  90.        LIBS="$LIBS $OGG_LIBS"
  91.        AC_TRY_LINK([
  92. #include <stdio.h>
  93. #include <ogg/ogg.h>
  94. ],     [ return 0; ],
  95.        [ echo "*** The test program compiled, but did not run. This usually means"
  96.        echo "*** that the run-time linker is not finding Ogg or finding the wrong"
  97.        echo "*** version of Ogg. If it is not finding Ogg, you'll need to set your"
  98.        echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
  99.        echo "*** to the installed location  Also, make sure you have run ldconfig if that"
  100.        echo "*** is required on your system"
  101.        echo "***"
  102.        echo "*** If you have an old version installed, it is best to remove it, although"
  103.        echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
  104.        [ echo "*** The test program failed to compile or link. See the file config.log for the"
  105.        echo "*** exact error that occured. This usually means Ogg was incorrectly installed"
  106.        echo "*** or that you have moved Ogg since it was installed. In the latter case, you"
  107.        echo "*** may want to edit the ogg-config script: $OGG_CONFIG" ])
  108.        CFLAGS="$ac_save_CFLAGS"
  109.        LIBS="$ac_save_LIBS"
  110.      fi
  111.      OGG_CFLAGS=""
  112.      OGG_LIBS=""
  113.      ifelse([$2], , :, [$2])
  114.   fi
  115.   AC_SUBST(OGG_CFLAGS)
  116.   AC_SUBST(OGG_LIBS)
  117.   rm -f conf.oggtest
  118. ])
  119.  
  120. # Do all the work for Automake.  This macro actually does too much --
  121. # some checks are only needed if your package does certain things.
  122. # But this isn't really a big deal.
  123.  
  124. # serial 1
  125.  
  126. dnl Usage:
  127. dnl AM_INIT_AUTOMAKE(package,version, [no-define])
  128.  
  129. AC_DEFUN(AM_INIT_AUTOMAKE,
  130. [AC_REQUIRE([AC_PROG_INSTALL])
  131. PACKAGE=[$1]
  132. AC_SUBST(PACKAGE)
  133. VERSION=[$2]
  134. AC_SUBST(VERSION)
  135. dnl test to see if srcdir already configured
  136. if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
  137.   AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
  138. fi
  139. ifelse([$3],,
  140. AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
  141. AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
  142. AC_REQUIRE([AM_SANITY_CHECK])
  143. AC_REQUIRE([AC_ARG_PROGRAM])
  144. dnl FIXME This is truly gross.
  145. missing_dir=`cd $ac_aux_dir && pwd`
  146. AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
  147. AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
  148. AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
  149. AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
  150. AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
  151. AC_REQUIRE([AC_PROG_MAKE_SET])])
  152.  
  153. #
  154. # Check to make sure that the build environment is sane.
  155. #
  156.  
  157. AC_DEFUN(AM_SANITY_CHECK,
  158. [AC_MSG_CHECKING([whether build environment is sane])
  159. # Just in case
  160. sleep 1
  161. echo timestamp > conftestfile
  162. # Do `set' in a subshell so we don't clobber the current shell's
  163. # arguments.  Must try -L first in case configure is actually a
  164. # symlink; some systems play weird games with the mod time of symlinks
  165. # (eg FreeBSD returns the mod time of the symlink's containing
  166. # directory).
  167. if (
  168.    set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
  169.    if test "[$]*" = "X"; then
  170.       # -L didn't work.
  171.       set X `ls -t $srcdir/configure conftestfile`
  172.    fi
  173.    if test "[$]*" != "X $srcdir/configure conftestfile" \
  174.       && test "[$]*" != "X conftestfile $srcdir/configure"; then
  175.  
  176.       # If neither matched, then we have a broken ls.  This can happen
  177.       # if, for instance, CONFIG_SHELL is bash and it inherits a
  178.       # broken ls alias from the environment.  This has actually
  179.       # happened.  Such a system could not be considered "sane".
  180.       AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
  181. alias in your environment])
  182.    fi
  183.  
  184.    test "[$]2" = conftestfile
  185.    )
  186. then
  187.    # Ok.
  188.    :
  189. else
  190.    AC_MSG_ERROR([newly created file is older than distributed files!
  191. Check your system clock])
  192. fi
  193. rm -f conftest*
  194. AC_MSG_RESULT(yes)])
  195.  
  196. dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
  197. dnl The program must properly implement --version.
  198. AC_DEFUN(AM_MISSING_PROG,
  199. [AC_MSG_CHECKING(for working $2)
  200. # Run test in a subshell; some versions of sh will print an error if
  201. # an executable is not found, even if stderr is redirected.
  202. # Redirect stdin to placate older versions of autoconf.  Sigh.
  203. if ($2 --version) < /dev/null > /dev/null 2>&1; then
  204.    $1=$2
  205.    AC_MSG_RESULT(found)
  206. else
  207.    $1="$3/missing $2"
  208.    AC_MSG_RESULT(missing)
  209. fi
  210. AC_SUBST($1)])
  211.  
  212. # libtool.m4 - Configure libtool for the host system. -*-Shell-script-*-
  213.  
  214. # serial 46 AC_PROG_LIBTOOL
  215.  
  216. AC_DEFUN([AC_PROG_LIBTOOL],
  217. [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
  218.  
  219. # This can be used to rebuild libtool when needed
  220. LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
  221.  
  222. # Always use our own libtool.
  223. LIBTOOL='$(SHELL) $(top_builddir)/libtool'
  224. AC_SUBST(LIBTOOL)dnl
  225.  
  226. # Prevent multiple expansion
  227. define([AC_PROG_LIBTOOL], [])
  228. ])
  229.  
  230. AC_DEFUN([AC_LIBTOOL_SETUP],
  231. [AC_PREREQ(2.13)dnl
  232. AC_REQUIRE([AC_ENABLE_SHARED])dnl
  233. AC_REQUIRE([AC_ENABLE_STATIC])dnl
  234. AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
  235. AC_REQUIRE([AC_CANONICAL_HOST])dnl
  236. AC_REQUIRE([AC_CANONICAL_BUILD])dnl
  237. AC_REQUIRE([AC_PROG_CC])dnl
  238. AC_REQUIRE([AC_PROG_LD])dnl
  239. AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
  240. AC_REQUIRE([AC_PROG_NM])dnl
  241. AC_REQUIRE([AC_PROG_LN_S])dnl
  242. AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
  243. AC_REQUIRE([AC_OBJEXT])dnl
  244. AC_REQUIRE([AC_EXEEXT])dnl
  245. dnl
  246.  
  247. _LT_AC_PROG_ECHO_BACKSLASH
  248. # Only perform the check for file, if the check method requires it
  249. case $deplibs_check_method in
  250. file_magic*)
  251.   if test "$file_magic_cmd" = '$MAGIC_CMD'; then
  252.     AC_PATH_MAGIC
  253.   fi
  254.   ;;
  255. esac
  256.  
  257. AC_CHECK_TOOL(RANLIB, ranlib, :)
  258. AC_CHECK_TOOL(STRIP, strip, :)
  259.  
  260. ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
  261. ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
  262. enable_win32_dll=yes, enable_win32_dll=no)
  263.  
  264. AC_ARG_ENABLE(libtool-lock,
  265.   [  --disable-libtool-lock  avoid locking (might break parallel builds)])
  266. test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
  267.  
  268. # Some flags need to be propagated to the compiler or linker for good
  269. # libtool support.
  270. case $host in
  271. *-*-irix6*)
  272.   # Find out which ABI we are using.
  273.   echo '[#]line __oline__ "configure"' > conftest.$ac_ext
  274.   if AC_TRY_EVAL(ac_compile); then
  275.     case `/usr/bin/file conftest.$ac_objext` in
  276.     *32-bit*)
  277.       LD="${LD-ld} -32"
  278.       ;;
  279.     *N32*)
  280.       LD="${LD-ld} -n32"
  281.       ;;
  282.     *64-bit*)
  283.       LD="${LD-ld} -64"
  284.       ;;
  285.     esac
  286.   fi
  287.   rm -rf conftest*
  288.   ;;
  289.  
  290. *-*-sco3.2v5*)
  291.   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
  292.   SAVE_CFLAGS="$CFLAGS"
  293.   CFLAGS="$CFLAGS -belf"
  294.   AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
  295.     [AC_LANG_SAVE
  296.      AC_LANG_C
  297.      AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
  298.      AC_LANG_RESTORE])
  299.   if test x"$lt_cv_cc_needs_belf" != x"yes"; then
  300.     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
  301.     CFLAGS="$SAVE_CFLAGS"
  302.   fi
  303.   ;;
  304.  
  305. ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
  306. [*-*-cygwin* | *-*-mingw* | *-*-pw32*)
  307.   AC_CHECK_TOOL(DLLTOOL, dlltool, false)
  308.   AC_CHECK_TOOL(AS, as, false)
  309.   AC_CHECK_TOOL(OBJDUMP, objdump, false)
  310.  
  311.   # recent cygwin and mingw systems supply a stub DllMain which the user
  312.   # can override, but on older systems we have to supply one
  313.   AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
  314.     [AC_TRY_LINK([],
  315.       [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
  316.       DllMain (0, 0, 0);],
  317.       [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])])
  318.  
  319.   case $host/$CC in
  320.   *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*)
  321.     # old mingw systems require "-dll" to link a DLL, while more recent ones
  322.     # require "-mdll"
  323.     SAVE_CFLAGS="$CFLAGS"
  324.     CFLAGS="$CFLAGS -mdll"
  325.     AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
  326.       [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
  327.     CFLAGS="$SAVE_CFLAGS" ;;
  328.   *-*-cygwin* | *-*-pw32*)
  329.     # cygwin systems need to pass --dll to the linker, and not link
  330.     # crt.o which will require a WinMain@16 definition.
  331.     lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
  332.   esac
  333.   ;;
  334.   ])
  335. esac
  336.  
  337. _LT_AC_LTCONFIG_HACK
  338.  
  339. ])
  340.  
  341. # AC_LIBTOOL_HEADER_ASSERT
  342. # ------------------------
  343. AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT],
  344. [AC_CACHE_CHECK([whether $CC supports assert without backlinking],
  345.     [lt_cv_func_assert_works],
  346.     [case $host in
  347.     *-*-solaris*)
  348.       if test "$GCC" = yes && test "$with_gnu_ld" != yes; then
  349.         case `$CC --version 2>/dev/null` in
  350.         [[12]].*) lt_cv_func_assert_works=no ;;
  351.         *)        lt_cv_func_assert_works=yes ;;
  352.         esac
  353.       fi
  354.       ;;
  355.     esac])
  356.  
  357. if test "x$lt_cv_func_assert_works" = xyes; then
  358.   AC_CHECK_HEADERS(assert.h)
  359. fi
  360. ])# AC_LIBTOOL_HEADER_ASSERT
  361.  
  362. # _LT_AC_CHECK_DLFCN
  363. # --------------------
  364. AC_DEFUN([_LT_AC_CHECK_DLFCN],
  365. [AC_CHECK_HEADERS(dlfcn.h)
  366. ])# _LT_AC_CHECK_DLFCN
  367.  
  368. # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
  369. # ---------------------------------
  370. AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
  371. [AC_REQUIRE([AC_CANONICAL_HOST])
  372. AC_REQUIRE([AC_PROG_NM])
  373. AC_REQUIRE([AC_OBJEXT])
  374. # Check for command to grab the raw symbol name followed by C symbol from nm.
  375. AC_MSG_CHECKING([command to parse $NM output])
  376. AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl
  377.  
  378. # These are sane defaults that work on at least a few old systems.
  379. # [They come from Ultrix.  What could be older than Ultrix?!! ;)]
  380.  
  381. # Character class describing NM global symbol codes.
  382. symcode='[[BCDEGRST]]'
  383.  
  384. # Regexp to match symbols that can be accessed directly from C.
  385. sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
  386.  
  387. # Transform the above into a raw symbol and a C symbol.
  388. symxfrm='\1 \2\3 \3'
  389.  
  390. # Transform an extracted symbol line into a proper C declaration
  391. lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
  392.  
  393. # Transform an extracted symbol line into symbol name and symbol address
  394. lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
  395.  
  396. # Define system-specific variables.
  397. case $host_os in
  398. aix*)
  399.   symcode='[[BCDT]]'
  400.   ;;
  401. cygwin* | mingw* | pw32*)
  402.   symcode='[[ABCDGISTW]]'
  403.   ;;
  404. hpux*) # Its linker distinguishes data from code symbols
  405.   lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
  406.   lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
  407.   ;;
  408. irix* | nonstopux*)
  409.   symcode='[[BCDEGRST]]'
  410.   ;;
  411. solaris* | sysv5*)
  412.   symcode='[[BDT]]'
  413.   ;;
  414. sysv4)
  415.   symcode='[[DFNSTU]]'
  416.   ;;
  417. esac
  418.  
  419. # Handle CRLF in mingw tool chain
  420. opt_cr=
  421. case $host_os in
  422. mingw*)
  423.   opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
  424.   ;;
  425. esac
  426.  
  427. # If we're using GNU nm, then use its standard symbol codes.
  428. if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
  429.   symcode='[[ABCDGISTW]]'
  430. fi
  431.  
  432. # Try without a prefix undercore, then with it.
  433. for ac_symprfx in "" "_"; do
  434.  
  435.   # Write the raw and C identifiers.
  436. lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[     ]]\($symcode$symcode*\)[[     ]][[     ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
  437.  
  438.   # Check to see that the pipe works correctly.
  439.   pipe_works=no
  440.   rm -f conftest*
  441.   cat > conftest.$ac_ext <<EOF
  442. #ifdef __cplusplus
  443. extern "C" {
  444. #endif
  445. char nm_test_var;
  446. void nm_test_func(){}
  447. #ifdef __cplusplus
  448. }
  449. #endif
  450. int main(){nm_test_var='a';nm_test_func();return(0);}
  451. EOF
  452.  
  453.   if AC_TRY_EVAL(ac_compile); then
  454.     # Now try to grab the symbols.
  455.     nlist=conftest.nm
  456.     if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
  457.       # Try sorting and uniquifying the output.
  458.       if sort "$nlist" | uniq > "$nlist"T; then
  459.     mv -f "$nlist"T "$nlist"
  460.       else
  461.     rm -f "$nlist"T
  462.       fi
  463.  
  464.       # Make sure that we snagged all the symbols we need.
  465.       if egrep ' nm_test_var$' "$nlist" >/dev/null; then
  466.     if egrep ' nm_test_func$' "$nlist" >/dev/null; then
  467.       cat <<EOF > conftest.$ac_ext
  468. #ifdef __cplusplus
  469. extern "C" {
  470. #endif
  471.  
  472. EOF
  473.       # Now generate the symbol file.
  474.       eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext'
  475.  
  476.       cat <<EOF >> conftest.$ac_ext
  477. #if defined (__STDC__) && __STDC__
  478. # define lt_ptr void *
  479. #else
  480. # define lt_ptr char *
  481. # define const
  482. #endif
  483.  
  484. /* The mapping between symbol names and symbols. */
  485. const struct {
  486.   const char *name;
  487.   lt_ptr address;
  488. }
  489. lt_preloaded_symbols[[]] =
  490. {
  491. EOF
  492.       sed "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext
  493.       cat <<\EOF >> conftest.$ac_ext
  494.   {0, (lt_ptr) 0}
  495. };
  496.  
  497. #ifdef __cplusplus
  498. }
  499. #endif
  500. EOF
  501.       # Now try linking the two files.
  502.       mv conftest.$ac_objext conftstm.$ac_objext
  503.       save_LIBS="$LIBS"
  504.       save_CFLAGS="$CFLAGS"
  505.       LIBS="conftstm.$ac_objext"
  506.       CFLAGS="$CFLAGS$no_builtin_flag"
  507.       if AC_TRY_EVAL(ac_link) && test -s conftest; then
  508.         pipe_works=yes
  509.       fi
  510.       LIBS="$save_LIBS"
  511.       CFLAGS="$save_CFLAGS"
  512.     else
  513.       echo "cannot find nm_test_func in $nlist" >&AC_FD_CC
  514.     fi
  515.       else
  516.     echo "cannot find nm_test_var in $nlist" >&AC_FD_CC
  517.       fi
  518.     else
  519.       echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC
  520.     fi
  521.   else
  522.     echo "$progname: failed program was:" >&AC_FD_CC
  523.     cat conftest.$ac_ext >&5
  524.   fi
  525.   rm -f conftest* conftst*
  526.  
  527.   # Do not use the global_symbol_pipe unless it works.
  528.   if test "$pipe_works" = yes; then
  529.     break
  530.   else
  531.     lt_cv_sys_global_symbol_pipe=
  532.   fi
  533. done
  534. ])
  535. global_symbol_pipe="$lt_cv_sys_global_symbol_pipe"
  536. if test -z "$lt_cv_sys_global_symbol_pipe"; then
  537.   global_symbol_to_cdecl=
  538.   global_symbol_to_c_name_address=
  539. else
  540.   global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl"
  541.   global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address"
  542. fi
  543. if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address";
  544. then
  545.   AC_MSG_RESULT(failed)
  546. else
  547.   AC_MSG_RESULT(ok)
  548. fi
  549. ]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
  550.  
  551. # _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
  552. # ---------------------------------
  553. AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR],
  554. [# Find the correct PATH separator.  Usually this is `:', but
  555. # DJGPP uses `;' like DOS.
  556. if test "X${PATH_SEPARATOR+set}" != Xset; then
  557.   UNAME=${UNAME-`uname 2>/dev/null`}
  558.   case X$UNAME in
  559.     *-DOS) lt_cv_sys_path_separator=';' ;;
  560.     *)     lt_cv_sys_path_separator=':' ;;
  561.   esac
  562.   PATH_SEPARATOR=$lt_cv_sys_path_separator
  563. fi
  564. ])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
  565.  
  566. # _LT_AC_PROG_ECHO_BACKSLASH
  567. # --------------------------
  568. # Add some code to the start of the generated configure script which
  569. # will find an echo command which doesn't interpret backslashes.
  570. AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
  571. [ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
  572.                   [AC_DIVERT_PUSH(NOTICE)])
  573. _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
  574.  
  575. # Check that we are running under the correct shell.
  576. SHELL=${CONFIG_SHELL-/bin/sh}
  577.  
  578. case X$ECHO in
  579. X*--fallback-echo)
  580.   # Remove one level of quotation (which was required for Make).
  581.   ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
  582.   ;;
  583. esac
  584.  
  585. echo=${ECHO-echo}
  586. if test "X[$]1" = X--no-reexec; then
  587.   # Discard the --no-reexec flag, and continue.
  588.   shift
  589. elif test "X[$]1" = X--fallback-echo; then
  590.   # Avoid inline document here, it may be left over
  591.   :
  592. elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
  593.   # Yippee, $echo works!
  594.   :
  595. else
  596.   # Restart under the correct shell.
  597.   exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
  598. fi
  599.  
  600. if test "X[$]1" = X--fallback-echo; then
  601.   # used as fallback echo
  602.   shift
  603.   cat <<EOF
  604. $*
  605. EOF
  606.   exit 0
  607. fi
  608.  
  609. # The HP-UX ksh and POSIX shell print the target directory to stdout
  610. # if CDPATH is set.
  611. if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
  612.  
  613. if test -z "$ECHO"; then
  614. if test "X${echo_test_string+set}" != Xset; then
  615. # find a string as large as possible, as long as the shell can cope with it
  616.   for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
  617.     # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
  618.     if (echo_test_string="`eval $cmd`") 2>/dev/null &&
  619.        echo_test_string="`eval $cmd`" &&
  620.        (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
  621.     then
  622.       break
  623.     fi
  624.   done
  625. fi
  626.  
  627. if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
  628.    echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
  629.    test "X$echo_testing_string" = "X$echo_test_string"; then
  630.   :
  631. else
  632.   # The Solaris, AIX, and Digital Unix default echo programs unquote
  633.   # backslashes.  This makes it impossible to quote backslashes using
  634.   #   echo "$something" | sed 's/\\/\\\\/g'
  635.   #
  636.   # So, first we look for a working echo in the user's PATH.
  637.  
  638.   IFS="${IFS=     }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR
  639.   for dir in $PATH /usr/ucb; do
  640.     if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
  641.        test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
  642.        echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
  643.        test "X$echo_testing_string" = "X$echo_test_string"; then
  644.       echo="$dir/echo"
  645.       break
  646.     fi
  647.   done
  648.   IFS="$save_ifs"
  649.  
  650.   if test "X$echo" = Xecho; then
  651.     # We didn't find a better echo, so look for alternatives.
  652.     if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
  653.        echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
  654.        test "X$echo_testing_string" = "X$echo_test_string"; then
  655.       # This shell has a builtin print -r that does the trick.
  656.       echo='print -r'
  657.     elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
  658.      test "X$CONFIG_SHELL" != X/bin/ksh; then
  659.       # If we have ksh, try running configure again with it.
  660.       ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
  661.       export ORIGINAL_CONFIG_SHELL
  662.       CONFIG_SHELL=/bin/ksh
  663.       export CONFIG_SHELL
  664.       exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
  665.     else
  666.       # Try using printf.
  667.       echo='printf %s\n'
  668.       if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
  669.      echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
  670.      test "X$echo_testing_string" = "X$echo_test_string"; then
  671.     # Cool, printf works
  672.     :
  673.       elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
  674.        test "X$echo_testing_string" = 'X\t' &&
  675.        echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
  676.        test "X$echo_testing_string" = "X$echo_test_string"; then
  677.     CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
  678.     export CONFIG_SHELL
  679.     SHELL="$CONFIG_SHELL"
  680.     export SHELL
  681.     echo="$CONFIG_SHELL [$]0 --fallback-echo"
  682.       elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
  683.        test "X$echo_testing_string" = 'X\t' &&
  684.        echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
  685.        test "X$echo_testing_string" = "X$echo_test_string"; then
  686.     echo="$CONFIG_SHELL [$]0 --fallback-echo"
  687.       else
  688.     # maybe with a smaller string...
  689.     prev=:
  690.  
  691.     for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
  692.       if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
  693.       then
  694.         break
  695.       fi
  696.       prev="$cmd"
  697.     done
  698.  
  699.     if test "$prev" != 'sed 50q "[$]0"'; then
  700.       echo_test_string=`eval $prev`
  701.       export echo_test_string
  702.       exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
  703.     else
  704.       # Oops.  We lost completely, so just stick with echo.
  705.       echo=echo
  706.     fi
  707.       fi
  708.     fi
  709.   fi
  710. fi
  711. fi
  712.  
  713. # Copy echo and quote the copy suitably for passing to libtool from
  714. # the Makefile, instead of quoting the original, which is used later.
  715. ECHO=$echo
  716. if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
  717.    ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
  718. fi
  719.  
  720. AC_SUBST(ECHO)
  721. AC_DIVERT_POP
  722. ])# _LT_AC_PROG_ECHO_BACKSLASH
  723.  
  724. # _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
  725. #                           ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
  726. # ------------------------------------------------------------------
  727. AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
  728. [if test "$cross_compiling" = yes; then :
  729.   [$4]
  730. else
  731.   AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
  732.   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
  733.   lt_status=$lt_dlunknown
  734.   cat > conftest.$ac_ext <<EOF
  735. [#line __oline__ "configure"
  736. #include "confdefs.h"
  737.  
  738. #if HAVE_DLFCN_H
  739. #include <dlfcn.h>
  740. #endif
  741.  
  742. #include <stdio.h>
  743.  
  744. #ifdef RTLD_GLOBAL
  745. #  define LT_DLGLOBAL        RTLD_GLOBAL
  746. #else
  747. #  ifdef DL_GLOBAL
  748. #    define LT_DLGLOBAL        DL_GLOBAL
  749. #  else
  750. #    define LT_DLGLOBAL        0
  751. #  endif
  752. #endif
  753.  
  754. /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
  755.    find out it does not work in some platform. */
  756. #ifndef LT_DLLAZY_OR_NOW
  757. #  ifdef RTLD_LAZY
  758. #    define LT_DLLAZY_OR_NOW        RTLD_LAZY
  759. #  else
  760. #    ifdef DL_LAZY
  761. #      define LT_DLLAZY_OR_NOW        DL_LAZY
  762. #    else
  763. #      ifdef RTLD_NOW
  764. #        define LT_DLLAZY_OR_NOW    RTLD_NOW
  765. #      else
  766. #        ifdef DL_NOW
  767. #          define LT_DLLAZY_OR_NOW    DL_NOW
  768. #        else
  769. #          define LT_DLLAZY_OR_NOW    0
  770. #        endif
  771. #      endif
  772. #    endif
  773. #  endif
  774. #endif
  775.  
  776. #ifdef __cplusplus
  777. extern "C" void exit (int);
  778. #endif
  779.  
  780. void fnord() { int i=42;}
  781. int main ()
  782. {
  783.   void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
  784.   int status = $lt_dlunknown;
  785.  
  786.   if (self)
  787.     {
  788.       if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
  789.       else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
  790.       /* dlclose (self); */
  791.     }
  792.  
  793.     exit (status);
  794. }]
  795. EOF
  796.   if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
  797.     (./conftest; exit; ) 2>/dev/null
  798.     lt_status=$?
  799.     case x$lt_status in
  800.       x$lt_dlno_uscore) $1 ;;
  801.       x$lt_dlneed_uscore) $2 ;;
  802.       x$lt_unknown|x*) $3 ;;
  803.     esac
  804.   else :
  805.     # compilation failed
  806.     $3
  807.   fi
  808. fi
  809. rm -fr conftest*
  810. ])# _LT_AC_TRY_DLOPEN_SELF
  811.  
  812. # AC_LIBTOOL_DLOPEN_SELF
  813. # -------------------
  814. AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
  815. [if test "x$enable_dlopen" != xyes; then
  816.   enable_dlopen=unknown
  817.   enable_dlopen_self=unknown
  818.   enable_dlopen_self_static=unknown
  819. else
  820.   lt_cv_dlopen=no
  821.   lt_cv_dlopen_libs=
  822.  
  823.   case $host_os in
  824.   beos*)
  825.     lt_cv_dlopen="load_add_on"
  826.     lt_cv_dlopen_libs=
  827.     lt_cv_dlopen_self=yes
  828.     ;;
  829.  
  830.   cygwin* | mingw* | pw32*)
  831.     lt_cv_dlopen="LoadLibrary"
  832.     lt_cv_dlopen_libs=
  833.    ;;
  834.  
  835.   *)
  836.     AC_CHECK_FUNC([shl_load],
  837.           [lt_cv_dlopen="shl_load"],
  838.       [AC_CHECK_LIB([dld], [shl_load],
  839.             [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
  840.     [AC_CHECK_FUNC([dlopen],
  841.           [lt_cv_dlopen="dlopen"],
  842.       [AC_CHECK_LIB([dl], [dlopen],
  843.             [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
  844.         [AC_CHECK_LIB([svld], [dlopen],
  845.               [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
  846.           [AC_CHECK_LIB([dld], [dld_link],
  847.                 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
  848.           ])
  849.         ])
  850.       ])
  851.     ])
  852.       ])
  853.     ;;
  854.   esac
  855.  
  856.   if test "x$lt_cv_dlopen" != xno; then
  857.     enable_dlopen=yes
  858.   else
  859.     enable_dlopen=no
  860.   fi
  861.  
  862.   case $lt_cv_dlopen in
  863.   dlopen)
  864.     save_CPPFLAGS="$CPPFLAGS"
  865.     AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
  866.     test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
  867.  
  868.     save_LDFLAGS="$LDFLAGS"
  869.     eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
  870.  
  871.     save_LIBS="$LIBS"
  872.     LIBS="$lt_cv_dlopen_libs $LIBS"
  873.  
  874.     AC_CACHE_CHECK([whether a program can dlopen itself],
  875.       lt_cv_dlopen_self, [dnl
  876.       _LT_AC_TRY_DLOPEN_SELF(
  877.         lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
  878.         lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
  879.     ])
  880.  
  881.     if test "x$lt_cv_dlopen_self" = xyes; then
  882.       LDFLAGS="$LDFLAGS $link_static_flag"
  883.       AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
  884.           lt_cv_dlopen_self_static, [dnl
  885.       _LT_AC_TRY_DLOPEN_SELF(
  886.         lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
  887.         lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
  888.       ])
  889.     fi
  890.  
  891.     CPPFLAGS="$save_CPPFLAGS"
  892.     LDFLAGS="$save_LDFLAGS"
  893.     LIBS="$save_LIBS"
  894.     ;;
  895.   esac
  896.  
  897.   case $lt_cv_dlopen_self in
  898.   yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
  899.   *) enable_dlopen_self=unknown ;;
  900.   esac
  901.  
  902.   case $lt_cv_dlopen_self_static in
  903.   yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
  904.   *) enable_dlopen_self_static=unknown ;;
  905.   esac
  906. fi
  907. ])# AC_LIBTOOL_DLOPEN_SELF
  908.  
  909. AC_DEFUN([_LT_AC_LTCONFIG_HACK],
  910. [AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl
  911. # Sed substitution that helps us do robust quoting.  It backslashifies
  912. # metacharacters that are still active within double-quoted strings.
  913. Xsed='sed -e s/^X//'
  914. sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g'
  915.  
  916. # Same as above, but do not quote variable references.
  917. double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g'
  918.  
  919. # Sed substitution to delay expansion of an escaped shell variable in a
  920. # double_quote_subst'ed string.
  921. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
  922.  
  923. # Constants:
  924. rm="rm -f"
  925.  
  926. # Global variables:
  927. default_ofile=libtool
  928. can_build_shared=yes
  929.  
  930. # All known linkers require a `.a' archive for static linking (except M$VC,
  931. # which needs '.lib').
  932. libext=a
  933. ltmain="$ac_aux_dir/ltmain.sh"
  934. ofile="$default_ofile"
  935. with_gnu_ld="$lt_cv_prog_gnu_ld"
  936. need_locks="$enable_libtool_lock"
  937.  
  938. old_CC="$CC"
  939. old_CFLAGS="$CFLAGS"
  940.  
  941. # Set sane defaults for various variables
  942. test -z "$AR" && AR=ar
  943. test -z "$AR_FLAGS" && AR_FLAGS=cru
  944. test -z "$AS" && AS=as
  945. test -z "$CC" && CC=cc
  946. test -z "$DLLTOOL" && DLLTOOL=dlltool
  947. test -z "$LD" && LD=ld
  948. test -z "$LN_S" && LN_S="ln -s"
  949. test -z "$MAGIC_CMD" && MAGIC_CMD=file
  950. test -z "$NM" && NM=nm
  951. test -z "$OBJDUMP" && OBJDUMP=objdump
  952. test -z "$RANLIB" && RANLIB=:
  953. test -z "$STRIP" && STRIP=:
  954. test -z "$ac_objext" && ac_objext=o
  955.  
  956. if test x"$host" != x"$build"; then
  957.   ac_tool_prefix=${host_alias}-
  958. else
  959.   ac_tool_prefix=
  960. fi
  961.  
  962. # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
  963. case $host_os in
  964. linux-gnu*) ;;
  965. linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
  966. esac
  967.  
  968. case $host_os in
  969. aix3*)
  970.   # AIX sometimes has problems with the GCC collect2 program.  For some
  971.   # reason, if we set the COLLECT_NAMES environment variable, the problems
  972.   # vanish in a puff of smoke.
  973.   if test "X${COLLECT_NAMES+set}" != Xset; then
  974.     COLLECT_NAMES=
  975.     export COLLECT_NAMES
  976.   fi
  977.   ;;
  978. esac
  979.  
  980. # Determine commands to create old-style static archives.
  981. old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
  982. old_postinstall_cmds='chmod 644 $oldlib'
  983. old_postuninstall_cmds=
  984.  
  985. if test -n "$RANLIB"; then
  986.   case $host_os in
  987.   openbsd*)
  988.     old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
  989.     ;;
  990.   *)
  991.     old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
  992.     ;;
  993.   esac
  994.   old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
  995. fi
  996.  
  997. # Allow CC to be a program name with arguments.
  998. set dummy $CC
  999. compiler="[$]2"
  1000.  
  1001. AC_MSG_CHECKING([for objdir])
  1002. rm -f .libs 2>/dev/null
  1003. mkdir .libs 2>/dev/null
  1004. if test -d .libs; then
  1005.   objdir=.libs
  1006. else
  1007.   # MS-DOS does not allow filenames that begin with a dot.
  1008.   objdir=_libs
  1009. fi
  1010. rmdir .libs 2>/dev/null
  1011. AC_MSG_RESULT($objdir)
  1012.  
  1013.  
  1014. AC_ARG_WITH(pic,
  1015. [  --with-pic              try to use only PIC/non-PIC objects [default=use both]],
  1016. pic_mode="$withval", pic_mode=default)
  1017. test -z "$pic_mode" && pic_mode=default
  1018.  
  1019. # We assume here that the value for lt_cv_prog_cc_pic will not be cached
  1020. # in isolation, and that seeing it set (from the cache) indicates that
  1021. # the associated values are set (in the cache) correctly too.
  1022. AC_MSG_CHECKING([for $compiler option to produce PIC])
  1023. AC_CACHE_VAL(lt_cv_prog_cc_pic,
  1024. [ lt_cv_prog_cc_pic=
  1025.   lt_cv_prog_cc_shlib=
  1026.   lt_cv_prog_cc_wl=
  1027.   lt_cv_prog_cc_static=
  1028.   lt_cv_prog_cc_no_builtin=
  1029.   lt_cv_prog_cc_can_build_shared=$can_build_shared
  1030.  
  1031.   if test "$GCC" = yes; then
  1032.     lt_cv_prog_cc_wl='-Wl,'
  1033.     lt_cv_prog_cc_static='-static'
  1034.  
  1035.     case $host_os in
  1036.     aix*)
  1037.       # Below there is a dirty hack to force normal static linking with -ldl
  1038.       # The problem is because libdl dynamically linked with both libc and
  1039.       # libC (AIX C++ library), which obviously doesn't included in libraries
  1040.       # list by gcc. This cause undefined symbols with -static flags.
  1041.       # This hack allows C programs to be linked with "-static -ldl", but
  1042.       # not sure about C++ programs.
  1043.       lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC"
  1044.       ;;
  1045.     amigaos*)
  1046.       # FIXME: we need at least 68020 code to build shared libraries, but
  1047.       # adding the `-m68020' flag to GCC prevents building anything better,
  1048.       # like `-m68040'.
  1049.       lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
  1050.       ;;
  1051.     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
  1052.       # PIC is the default for these OSes.
  1053.       ;;
  1054.     darwin* | rhapsody*)
  1055.       # PIC is the default on this platform
  1056.       # Common symbols not allowed in MH_DYLIB files
  1057.       lt_cv_prog_cc_pic='-fno-common'
  1058.       ;;
  1059.     cygwin* | mingw* | pw32* | os2*)
  1060.       # This hack is so that the source file can tell whether it is being
  1061.       # built for inclusion in a dll (and should export symbols for example).
  1062.       lt_cv_prog_cc_pic='-DDLL_EXPORT'
  1063.       ;;
  1064.     sysv4*MP*)
  1065.       if test -d /usr/nec; then
  1066.      lt_cv_prog_cc_pic=-Kconform_pic
  1067.       fi
  1068.       ;;
  1069.     *)
  1070.       lt_cv_prog_cc_pic='-fPIC'
  1071.       ;;
  1072.     esac
  1073.   else
  1074.     # PORTME Check for PIC flags for the system compiler.
  1075.     case $host_os in
  1076.     aix3* | aix4* | aix5*)
  1077.       lt_cv_prog_cc_wl='-Wl,'
  1078.       # All AIX code is PIC.
  1079.       if test "$host_cpu" = ia64; then
  1080.     # AIX 5 now supports IA64 processor
  1081.     lt_cv_prog_cc_static='-Bstatic'
  1082.       else
  1083.     lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp'
  1084.       fi
  1085.       ;;
  1086.  
  1087.     hpux9* | hpux10* | hpux11*)
  1088.       # Is there a better lt_cv_prog_cc_static that works with the bundled CC?
  1089.       lt_cv_prog_cc_wl='-Wl,'
  1090.       lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive"
  1091.       lt_cv_prog_cc_pic='+Z'
  1092.       ;;
  1093.  
  1094.     irix5* | irix6* | nonstopux*)
  1095.       lt_cv_prog_cc_wl='-Wl,'
  1096.       lt_cv_prog_cc_static='-non_shared'
  1097.       # PIC (with -KPIC) is the default.
  1098.       ;;
  1099.  
  1100.     cygwin* | mingw* | pw32* | os2*)
  1101.       # This hack is so that the source file can tell whether it is being
  1102.       # built for inclusion in a dll (and should export symbols for example).
  1103.       lt_cv_prog_cc_pic='-DDLL_EXPORT'
  1104.       ;;
  1105.  
  1106.     newsos6)
  1107.       lt_cv_prog_cc_pic='-KPIC'
  1108.       lt_cv_prog_cc_static='-Bstatic'
  1109.       ;;
  1110.  
  1111.     osf3* | osf4* | osf5*)
  1112.       # All OSF/1 code is PIC.
  1113.       lt_cv_prog_cc_wl='-Wl,'
  1114.       lt_cv_prog_cc_static='-non_shared'
  1115.       ;;
  1116.  
  1117.     sco3.2v5*)
  1118.       lt_cv_prog_cc_pic='-Kpic'
  1119.       lt_cv_prog_cc_static='-dn'
  1120.       lt_cv_prog_cc_shlib='-belf'
  1121.       ;;
  1122.  
  1123.     solaris*)
  1124.       lt_cv_prog_cc_pic='-KPIC'
  1125.       lt_cv_prog_cc_static='-Bstatic'
  1126.       lt_cv_prog_cc_wl='-Wl,'
  1127.       ;;
  1128.  
  1129.     sunos4*)
  1130.       lt_cv_prog_cc_pic='-PIC'
  1131.       lt_cv_prog_cc_static='-Bstatic'
  1132.       lt_cv_prog_cc_wl='-Qoption ld '
  1133.       ;;
  1134.  
  1135.     sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
  1136.       lt_cv_prog_cc_pic='-KPIC'
  1137.       lt_cv_prog_cc_static='-Bstatic'
  1138.       if test "x$host_vendor" = xsni; then
  1139.     lt_cv_prog_cc_wl='-LD'
  1140.       else
  1141.     lt_cv_prog_cc_wl='-Wl,'
  1142.       fi
  1143.       ;;
  1144.  
  1145.     uts4*)
  1146.       lt_cv_prog_cc_pic='-pic'
  1147.       lt_cv_prog_cc_static='-Bstatic'
  1148.       ;;
  1149.  
  1150.     sysv4*MP*)
  1151.       if test -d /usr/nec ;then
  1152.     lt_cv_prog_cc_pic='-Kconform_pic'
  1153.     lt_cv_prog_cc_static='-Bstatic'
  1154.       fi
  1155.       ;;
  1156.  
  1157.     *)
  1158.       lt_cv_prog_cc_can_build_shared=no
  1159.       ;;
  1160.     esac
  1161.   fi
  1162. ])
  1163. if test -z "$lt_cv_prog_cc_pic"; then
  1164.   AC_MSG_RESULT([none])
  1165. else
  1166.   AC_MSG_RESULT([$lt_cv_prog_cc_pic])
  1167.  
  1168.   # Check to make sure the pic_flag actually works.
  1169.   AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works])
  1170.   AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl
  1171.     save_CFLAGS="$CFLAGS"
  1172.     CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC"
  1173.     AC_TRY_COMPILE([], [], [dnl
  1174.       case $host_os in
  1175.       hpux9* | hpux10* | hpux11*)
  1176.     # On HP-UX, both CC and GCC only warn that PIC is supported... then
  1177.     # they create non-PIC objects.  So, if there were any warnings, we
  1178.     # assume that PIC is not supported.
  1179.     if test -s conftest.err; then
  1180.       lt_cv_prog_cc_pic_works=no
  1181.     else
  1182.       lt_cv_prog_cc_pic_works=yes
  1183.     fi
  1184.     ;;
  1185.       *)
  1186.     lt_cv_prog_cc_pic_works=yes
  1187.     ;;
  1188.       esac
  1189.     ], [dnl
  1190.       lt_cv_prog_cc_pic_works=no
  1191.     ])
  1192.     CFLAGS="$save_CFLAGS"
  1193.   ])
  1194.  
  1195.   if test "X$lt_cv_prog_cc_pic_works" = Xno; then
  1196.     lt_cv_prog_cc_pic=
  1197.     lt_cv_prog_cc_can_build_shared=no
  1198.   else
  1199.     lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic"
  1200.   fi
  1201.  
  1202.   AC_MSG_RESULT([$lt_cv_prog_cc_pic_works])
  1203. fi
  1204.  
  1205. # Check for any special shared library compilation flags.
  1206. if test -n "$lt_cv_prog_cc_shlib"; then
  1207.   AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries])
  1208.   if echo "$old_CC $old_CFLAGS " | egrep -e "[[     ]]$lt_cv_prog_cc_shlib[[     ]]" >/dev/null; then :
  1209.   else
  1210.    AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure])
  1211.     lt_cv_prog_cc_can_build_shared=no
  1212.   fi
  1213. fi
  1214.  
  1215. AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works])
  1216. AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl
  1217.   lt_cv_prog_cc_static_works=no
  1218.   save_LDFLAGS="$LDFLAGS"
  1219.   LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static"
  1220.   AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes])
  1221.   LDFLAGS="$save_LDFLAGS"
  1222. ])
  1223.  
  1224. # Belt *and* braces to stop my trousers falling down:
  1225. test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static=
  1226. AC_MSG_RESULT([$lt_cv_prog_cc_static_works])
  1227.  
  1228. pic_flag="$lt_cv_prog_cc_pic"
  1229. special_shlib_compile_flags="$lt_cv_prog_cc_shlib"
  1230. wl="$lt_cv_prog_cc_wl"
  1231. link_static_flag="$lt_cv_prog_cc_static"
  1232. no_builtin_flag="$lt_cv_prog_cc_no_builtin"
  1233. can_build_shared="$lt_cv_prog_cc_can_build_shared"
  1234.  
  1235.  
  1236. # Check to see if options -o and -c are simultaneously supported by compiler
  1237. AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext])
  1238. AC_CACHE_VAL([lt_cv_compiler_c_o], [
  1239. $rm -r conftest 2>/dev/null
  1240. mkdir conftest
  1241. cd conftest
  1242. echo "int some_variable = 0;" > conftest.$ac_ext
  1243. mkdir out
  1244. # According to Tom Tromey, Ian Lance Taylor reported there are C compilers
  1245. # that will create temporary files in the current directory regardless of
  1246. # the output directory.  Thus, making CWD read-only will cause this test
  1247. # to fail, enabling locking or at least warning the user not to do parallel
  1248. # builds.
  1249. chmod -w .
  1250. save_CFLAGS="$CFLAGS"
  1251. CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
  1252. compiler_c_o=no
  1253. if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
  1254.   # The compiler can only warn and ignore the option if not recognized
  1255.   # So say no if there are warnings
  1256.   if test -s out/conftest.err; then
  1257.     lt_cv_compiler_c_o=no
  1258.   else
  1259.     lt_cv_compiler_c_o=yes
  1260.   fi
  1261. else
  1262.   # Append any errors to the config.log.
  1263.   cat out/conftest.err 1>&AC_FD_CC
  1264.   lt_cv_compiler_c_o=no
  1265. fi
  1266. CFLAGS="$save_CFLAGS"
  1267. chmod u+w .
  1268. $rm conftest* out/*
  1269. rmdir out
  1270. cd ..
  1271. rmdir conftest
  1272. $rm -r conftest 2>/dev/null
  1273. ])
  1274. compiler_c_o=$lt_cv_compiler_c_o
  1275. AC_MSG_RESULT([$compiler_c_o])
  1276.  
  1277. if test x"$compiler_c_o" = x"yes"; then
  1278.   # Check to see if we can write to a .lo
  1279.   AC_MSG_CHECKING([if $compiler supports -c -o file.lo])
  1280.   AC_CACHE_VAL([lt_cv_compiler_o_lo], [
  1281.   lt_cv_compiler_o_lo=no
  1282.   save_CFLAGS="$CFLAGS"
  1283.   CFLAGS="$CFLAGS -c -o conftest.lo"
  1284.   save_objext="$ac_objext"
  1285.   ac_objext=lo
  1286.   AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
  1287.     # The compiler can only warn and ignore the option if not recognized
  1288.     # So say no if there are warnings
  1289.     if test -s conftest.err; then
  1290.       lt_cv_compiler_o_lo=no
  1291.     else
  1292.       lt_cv_compiler_o_lo=yes
  1293.     fi
  1294.   ])
  1295.   ac_objext="$save_objext"
  1296.   CFLAGS="$save_CFLAGS"
  1297.   ])
  1298.   compiler_o_lo=$lt_cv_compiler_o_lo
  1299.   AC_MSG_RESULT([$compiler_o_lo])
  1300. else
  1301.   compiler_o_lo=no
  1302. fi
  1303.  
  1304. # Check to see if we can do hard links to lock some files if needed
  1305. hard_links="nottested"
  1306. if test "$compiler_c_o" = no && test "$need_locks" != no; then
  1307.   # do not overwrite the value of need_locks provided by the user
  1308.   AC_MSG_CHECKING([if we can lock with hard links])
  1309.   hard_links=yes
  1310.   $rm conftest*
  1311.   ln conftest.a conftest.b 2>/dev/null && hard_links=no
  1312.   touch conftest.a
  1313.   ln conftest.a conftest.b 2>&5 || hard_links=no
  1314.   ln conftest.a conftest.b 2>/dev/null && hard_links=no
  1315.   AC_MSG_RESULT([$hard_links])
  1316.   if test "$hard_links" = no; then
  1317.     AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe])
  1318.     need_locks=warn
  1319.   fi
  1320. else
  1321.   need_locks=no
  1322. fi
  1323.  
  1324. if test "$GCC" = yes; then
  1325.   # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
  1326.   AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions])
  1327.   echo "int some_variable = 0;" > conftest.$ac_ext
  1328.   save_CFLAGS="$CFLAGS"
  1329.   CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
  1330.   compiler_rtti_exceptions=no
  1331.   AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
  1332.     # The compiler can only warn and ignore the option if not recognized
  1333.     # So say no if there are warnings
  1334.     if test -s conftest.err; then
  1335.       compiler_rtti_exceptions=no
  1336.     else
  1337.       compiler_rtti_exceptions=yes
  1338.     fi
  1339.   ])
  1340.   CFLAGS="$save_CFLAGS"
  1341.   AC_MSG_RESULT([$compiler_rtti_exceptions])
  1342.  
  1343.   if test "$compiler_rtti_exceptions" = "yes"; then
  1344.     no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
  1345.   else
  1346.     no_builtin_flag=' -fno-builtin'
  1347.   fi
  1348. fi
  1349.  
  1350. # See if the linker supports building shared libraries.
  1351. AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries])
  1352.  
  1353. allow_undefined_flag=
  1354. no_undefined_flag=
  1355. need_lib_prefix=unknown
  1356. need_version=unknown
  1357. # when you set need_version to no, make sure it does not cause -set_version
  1358. # flags to be left without arguments
  1359. archive_cmds=
  1360. archive_expsym_cmds=
  1361. old_archive_from_new_cmds=
  1362. old_archive_from_expsyms_cmds=
  1363. export_dynamic_flag_spec=
  1364. whole_archive_flag_spec=
  1365. thread_safe_flag_spec=
  1366. hardcode_into_libs=no
  1367. hardcode_libdir_flag_spec=
  1368. hardcode_libdir_separator=
  1369. hardcode_direct=no
  1370. hardcode_minus_L=no
  1371. hardcode_shlibpath_var=unsupported
  1372. runpath_var=
  1373. link_all_deplibs=unknown
  1374. always_export_symbols=no
  1375. export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
  1376. # include_expsyms should be a list of space-separated symbols to be *always*
  1377. # included in the symbol list
  1378. include_expsyms=
  1379. # exclude_expsyms can be an egrep regular expression of symbols to exclude
  1380. # it will be wrapped by ` (' and `)$', so one must not match beginning or
  1381. # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
  1382. # as well as any symbol that contains `d'.
  1383. exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
  1384. # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
  1385. # platforms (ab)use it in PIC code, but their linkers get confused if
  1386. # the symbol is explicitly referenced.  Since portable code cannot
  1387. # rely on this symbol name, it's probably fine to never include it in
  1388. # preloaded symbol tables.
  1389. extract_expsyms_cmds=
  1390.  
  1391. case $host_os in
  1392. cygwin* | mingw* | pw32*)
  1393.   # FIXME: the MSVC++ port hasn't been tested in a loooong time
  1394.   # When not using gcc, we currently assume that we are using
  1395.   # Microsoft Visual C++.
  1396.   if test "$GCC" != yes; then
  1397.     with_gnu_ld=no
  1398.   fi
  1399.   ;;
  1400. openbsd*)
  1401.   with_gnu_ld=no
  1402.   ;;
  1403. esac
  1404.  
  1405. ld_shlibs=yes
  1406. if test "$with_gnu_ld" = yes; then
  1407.   # If archive_cmds runs LD, not CC, wlarc should be empty
  1408.   wlarc='${wl}'
  1409.  
  1410.   # See if GNU ld supports shared libraries.
  1411.   case $host_os in
  1412.   aix3* | aix4* | aix5*)
  1413.     # On AIX, the GNU linker is very broken
  1414.     # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available.
  1415.     ld_shlibs=no
  1416.     cat <<EOF 1>&2
  1417.  
  1418. *** Warning: the GNU linker, at least up to release 2.9.1, is reported
  1419. *** to be unable to reliably create shared libraries on AIX.
  1420. *** Therefore, libtool is disabling shared libraries support.  If you
  1421. *** really care for shared libraries, you may want to modify your PATH
  1422. *** so that a non-GNU linker is found, and then restart.
  1423.  
  1424. EOF
  1425.     ;;
  1426.  
  1427.   amigaos*)
  1428.     archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
  1429.     hardcode_libdir_flag_spec='-L$libdir'
  1430.     hardcode_minus_L=yes
  1431.  
  1432.     # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
  1433.     # that the semantics of dynamic libraries on AmigaOS, at least up
  1434.     # to version 4, is to share data among multiple programs linked
  1435.     # with the same dynamic library.  Since this doesn't match the
  1436.     # behavior of shared libraries on other platforms, we can use
  1437.     # them.
  1438.     ld_shlibs=no
  1439.     ;;
  1440.  
  1441.   beos*)
  1442.     if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
  1443.       allow_undefined_flag=unsupported
  1444.       # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
  1445.       # support --undefined.  This deserves some investigation.  FIXME
  1446.       archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  1447.     else
  1448.       ld_shlibs=no
  1449.     fi
  1450.     ;;
  1451.  
  1452.   cygwin* | mingw* | pw32*)
  1453.     # hardcode_libdir_flag_spec is actually meaningless, as there is
  1454.     # no search path for DLLs.
  1455.     hardcode_libdir_flag_spec='-L$libdir'
  1456.     allow_undefined_flag=unsupported
  1457.     always_export_symbols=yes
  1458.  
  1459.     extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
  1460.       sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
  1461.       test -f $output_objdir/impgen.exe || (cd $output_objdir && \
  1462.       if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
  1463.       else $CC -o impgen impgen.c ; fi)~
  1464.       $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
  1465.  
  1466.     old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
  1467.  
  1468.     # cygwin and mingw dlls have different entry points and sets of symbols
  1469.     # to exclude.
  1470.     # FIXME: what about values for MSVC?
  1471.     dll_entry=__cygwin_dll_entry@12
  1472.     dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
  1473.     case $host_os in
  1474.     mingw*)
  1475.       # mingw values
  1476.       dll_entry=_DllMainCRTStartup@12
  1477.       dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
  1478.       ;;
  1479.     esac
  1480.  
  1481.     # mingw and cygwin differ, and it's simplest to just exclude the union
  1482.     # of the two symbol sets.
  1483.     dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
  1484.  
  1485.     # recent cygwin and mingw systems supply a stub DllMain which the user
  1486.     # can override, but on older systems we have to supply one (in ltdll.c)
  1487.     if test "x$lt_cv_need_dllmain" = "xyes"; then
  1488.       ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
  1489.       ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~
  1490.     test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
  1491.     else
  1492.       ltdll_obj=
  1493.       ltdll_cmds=
  1494.     fi
  1495.  
  1496.     # Extract the symbol export list from an `--export-all' def file,
  1497.     # then regenerate the def file from the symbol export list, so that
  1498.     # the compiled dll only exports the symbol export list.
  1499.     # Be careful not to strip the DATA tag left be newer dlltools.
  1500.     export_symbols_cmds="$ltdll_cmds"'
  1501.       $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
  1502.       sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
  1503.  
  1504.     # If the export-symbols file already is a .def file (1st line
  1505.     # is EXPORTS), use it as is.
  1506.     # If DATA tags from a recent dlltool are present, honour them!
  1507.     archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
  1508.     cp $export_symbols $output_objdir/$soname-def;
  1509.       else
  1510.     echo EXPORTS > $output_objdir/$soname-def;
  1511.     _lt_hint=1;
  1512.     cat $export_symbols | while read symbol; do
  1513.      set dummy \$symbol;
  1514.      case \[$]# in
  1515.        2) echo "   \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
  1516.        *) echo "     \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
  1517.      esac;
  1518.      _lt_hint=`expr 1 + \$_lt_hint`;
  1519.     done;
  1520.       fi~
  1521.       '"$ltdll_cmds"'
  1522.       $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
  1523.       $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~
  1524.       $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
  1525.       $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~
  1526.       $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
  1527.     ;;
  1528.  
  1529.   netbsd*)
  1530.     if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
  1531.       archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  1532.       wlarc=
  1533.     else
  1534.       archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  1535.       archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  1536.     fi
  1537.     ;;
  1538.  
  1539.   solaris* | sysv5*)
  1540.     if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
  1541.       ld_shlibs=no
  1542.       cat <<EOF 1>&2
  1543.  
  1544. *** Warning: The releases 2.8.* of the GNU linker cannot reliably
  1545. *** create shared libraries on Solaris systems.  Therefore, libtool
  1546. *** is disabling shared libraries support.  We urge you to upgrade GNU
  1547. *** binutils to release 2.9.1 or newer.  Another option is to modify
  1548. *** your PATH or compiler configuration so that the native linker is
  1549. *** used, and then restart.
  1550.  
  1551. EOF
  1552.     elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
  1553.       archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  1554.       archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  1555.     else
  1556.       ld_shlibs=no
  1557.     fi
  1558.     ;;
  1559.  
  1560.   sunos4*)
  1561.     archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
  1562.     wlarc=
  1563.     hardcode_direct=yes
  1564.     hardcode_shlibpath_var=no
  1565.     ;;
  1566.  
  1567.   *)
  1568.     if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
  1569.       archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
  1570.       archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  1571.     else
  1572.       ld_shlibs=no
  1573.     fi
  1574.     ;;
  1575.   esac
  1576.  
  1577.   if test "$ld_shlibs" = yes; then
  1578.     runpath_var=LD_RUN_PATH
  1579.     hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
  1580.     export_dynamic_flag_spec='${wl}--export-dynamic'
  1581.     case $host_os in
  1582.     cygwin* | mingw* | pw32*)
  1583.       # dlltool doesn't understand --whole-archive et. al.
  1584.       whole_archive_flag_spec=
  1585.       ;;
  1586.     *)
  1587.       # ancient GNU ld didn't support --whole-archive et. al.
  1588.       if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
  1589.     whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
  1590.       else
  1591.     whole_archive_flag_spec=
  1592.       fi
  1593.       ;;
  1594.     esac
  1595.   fi
  1596. else
  1597.   # PORTME fill in a description of your system's linker (not GNU ld)
  1598.   case $host_os in
  1599.   aix3*)
  1600.     allow_undefined_flag=unsupported
  1601.     always_export_symbols=yes
  1602.     archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
  1603.     # Note: this linker hardcodes the directories in LIBPATH if there
  1604.     # are no directories specified by -L.
  1605.     hardcode_minus_L=yes
  1606.     if test "$GCC" = yes && test -z "$link_static_flag"; then
  1607.       # Neither direct hardcoding nor static linking is supported with a
  1608.       # broken collect2.
  1609.       hardcode_direct=unsupported
  1610.     fi
  1611.     ;;
  1612.  
  1613.   aix4* | aix5*)
  1614.     if test "$host_cpu" = ia64; then
  1615.       # On IA64, the linker does run time linking by default, so we don't
  1616.       # have to do anything special.
  1617.       aix_use_runtimelinking=no
  1618.       exp_sym_flag='-Bexport'
  1619.       no_entry_flag=""
  1620.     else
  1621.       aix_use_runtimelinking=no
  1622.  
  1623.       # Test if we are trying to use run time linking or normal
  1624.       # AIX style linking. If -brtl is somewhere in LDFLAGS, we
  1625.       # need to do runtime linking.
  1626.       case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
  1627.     for ld_flag in $LDFLAGS; do
  1628.       if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
  1629.         aix_use_runtimelinking=yes
  1630.         break
  1631.       fi
  1632.     done
  1633.       esac
  1634.  
  1635.       exp_sym_flag='-bexport'
  1636.       no_entry_flag='-bnoentry'
  1637.     fi
  1638.  
  1639.     # When large executables or shared objects are built, AIX ld can
  1640.     # have problems creating the table of contents.  If linking a library
  1641.     # or program results in "error TOC overflow" add -mminimal-toc to
  1642.     # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
  1643.     # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
  1644.  
  1645.     hardcode_direct=yes
  1646.     archive_cmds=''
  1647.     hardcode_libdir_separator=':'
  1648.     if test "$GCC" = yes; then
  1649.       case $host_os in aix4.[[012]]|aix4.[[012]].*)
  1650.     collect2name=`${CC} -print-prog-name=collect2`
  1651.     if test -f "$collect2name" && \
  1652.       strings "$collect2name" | grep resolve_lib_name >/dev/null
  1653.     then
  1654.       # We have reworked collect2
  1655.       hardcode_direct=yes
  1656.     else
  1657.       # We have old collect2
  1658.       hardcode_direct=unsupported
  1659.       # It fails to find uninstalled libraries when the uninstalled
  1660.       # path is not listed in the libpath.  Setting hardcode_minus_L
  1661.       # to unsupported forces relinking
  1662.       hardcode_minus_L=yes
  1663.       hardcode_libdir_flag_spec='-L$libdir'
  1664.       hardcode_libdir_separator=
  1665.     fi
  1666.       esac
  1667.  
  1668.       shared_flag='-shared'
  1669.     else
  1670.       # not using gcc
  1671.       if test "$host_cpu" = ia64; then
  1672.     shared_flag='${wl}-G'
  1673.       else
  1674.     if test "$aix_use_runtimelinking" = yes; then
  1675.       shared_flag='${wl}-G'
  1676.     else
  1677.       shared_flag='${wl}-bM:SRE'
  1678.     fi
  1679.       fi
  1680.     fi
  1681.  
  1682.     # It seems that -bexpall can do strange things, so it is better to
  1683.     # generate a list of symbols to export.
  1684.     always_export_symbols=yes
  1685.     if test "$aix_use_runtimelinking" = yes; then
  1686.       # Warning - without using the other runtime loading flags (-brtl),
  1687.       # -berok will link without error, but may produce a broken library.
  1688.       allow_undefined_flag='-berok'
  1689.       hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
  1690.       archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
  1691.     else
  1692.       if test "$host_cpu" = ia64; then
  1693.     hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
  1694.     allow_undefined_flag="-z nodefs"
  1695.     archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
  1696.       else
  1697.     hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
  1698.     # Warning - without using the other run time loading flags,
  1699.     # -berok will link without error, but may produce a broken library.
  1700.     allow_undefined_flag='${wl}-berok'
  1701.     # This is a bit strange, but is similar to how AIX traditionally builds
  1702.     # it's shared libraries.
  1703.     archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname'
  1704.       fi
  1705.     fi
  1706.     ;;
  1707.  
  1708.   amigaos*)
  1709.     archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
  1710.     hardcode_libdir_flag_spec='-L$libdir'
  1711.     hardcode_minus_L=yes
  1712.     # see comment about different semantics on the GNU ld section
  1713.     ld_shlibs=no
  1714.     ;;
  1715.  
  1716.   cygwin* | mingw* | pw32*)
  1717.     # When not using gcc, we currently assume that we are using
  1718.     # Microsoft Visual C++.
  1719.     # hardcode_libdir_flag_spec is actually meaningless, as there is
  1720.     # no search path for DLLs.
  1721.     hardcode_libdir_flag_spec=' '
  1722.     allow_undefined_flag=unsupported
  1723.     # Tell ltmain to make .lib files, not .a files.
  1724.     libext=lib
  1725.     # FIXME: Setting linknames here is a bad hack.
  1726.     archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
  1727.     # The linker will automatically build a .lib file if we build a DLL.
  1728.     old_archive_from_new_cmds='true'
  1729.     # FIXME: Should let the user specify the lib program.
  1730.     old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
  1731.     fix_srcfile_path='`cygpath -w "$srcfile"`'
  1732.     ;;
  1733.  
  1734.   darwin* | rhapsody*)
  1735.     case "$host_os" in
  1736.     rhapsody* | darwin1.[[012]])
  1737.       allow_undefined_flag='-undefined suppress'
  1738.       ;;
  1739.     *) # Darwin 1.3 on
  1740.       allow_undefined_flag='-flat_namespace -undefined suppress'
  1741.       ;;
  1742.     esac
  1743.     # FIXME: Relying on posixy $() will cause problems for
  1744.     #        cross-compilation, but unfortunately the echo tests do not
  1745.     #        yet detect zsh echo's removal of \ escapes.  Also zsh mangles
  1746.     #         `"' quotes if we put them in here... so don't!
  1747.     archive_cmds='$nonopt $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring'
  1748.     # We need to add '_' to the symbols in $export_symbols first
  1749.     #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
  1750.     hardcode_direct=yes
  1751.     hardcode_shlibpath_var=no
  1752.     whole_archive_flag_spec='-all_load $convenience'
  1753.     ;;
  1754.  
  1755.   freebsd1*)
  1756.     ld_shlibs=no
  1757.     ;;
  1758.  
  1759.   # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
  1760.   # support.  Future versions do this automatically, but an explicit c++rt0.o
  1761.   # does not break anything, and helps significantly (at the cost of a little
  1762.   # extra space).
  1763.   freebsd2.2*)
  1764.     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
  1765.     hardcode_libdir_flag_spec='-R$libdir'
  1766.     hardcode_direct=yes
  1767.     hardcode_shlibpath_var=no
  1768.     ;;
  1769.  
  1770.   # Unfortunately, older versions of FreeBSD 2 do not have this feature.
  1771.   freebsd2*)
  1772.     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
  1773.     hardcode_direct=yes
  1774.     hardcode_minus_L=yes
  1775.     hardcode_shlibpath_var=no
  1776.     ;;
  1777.  
  1778.   # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
  1779.   freebsd*)
  1780.     archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
  1781.     hardcode_libdir_flag_spec='-R$libdir'
  1782.     hardcode_direct=yes
  1783.     hardcode_shlibpath_var=no
  1784.     ;;
  1785.  
  1786.   hpux9* | hpux10* | hpux11*)
  1787.     case $host_os in
  1788.     hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;;
  1789.     *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;;
  1790.     esac
  1791.     hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
  1792.     hardcode_libdir_separator=:
  1793.     hardcode_direct=yes
  1794.     hardcode_minus_L=yes # Not in the search PATH, but as the default
  1795.              # location of the library.
  1796.     export_dynamic_flag_spec='${wl}-E'
  1797.     ;;
  1798.  
  1799.   irix5* | irix6* | nonstopux*)
  1800.     if test "$GCC" = yes; then
  1801.       archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
  1802.     else
  1803.       archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
  1804.     fi
  1805.     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
  1806.     hardcode_libdir_separator=:
  1807.     link_all_deplibs=yes
  1808.     ;;
  1809.  
  1810.   netbsd*)
  1811.     if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
  1812.       archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
  1813.     else
  1814.       archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
  1815.     fi
  1816.     hardcode_libdir_flag_spec='-R$libdir'
  1817.     hardcode_direct=yes
  1818.     hardcode_shlibpath_var=no
  1819.     ;;
  1820.  
  1821.   newsos6)
  1822.     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1823.     hardcode_direct=yes
  1824.     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
  1825.     hardcode_libdir_separator=:
  1826.     hardcode_shlibpath_var=no
  1827.     ;;
  1828.  
  1829.   openbsd*)
  1830.     hardcode_direct=yes
  1831.     hardcode_shlibpath_var=no
  1832.     if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
  1833.       archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
  1834.       hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
  1835.       export_dynamic_flag_spec='${wl}-E'
  1836.     else
  1837.       case "$host_os" in
  1838.       openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
  1839.     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
  1840.     hardcode_libdir_flag_spec='-R$libdir'
  1841.         ;;
  1842.       *)
  1843.         archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
  1844.         hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
  1845.         ;;
  1846.       esac
  1847.     fi
  1848.     ;;
  1849.  
  1850.   os2*)
  1851.     hardcode_libdir_flag_spec='-L$libdir'
  1852.     hardcode_minus_L=yes
  1853.     allow_undefined_flag=unsupported
  1854.     archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
  1855.     old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
  1856.     ;;
  1857.  
  1858.   osf3*)
  1859.     if test "$GCC" = yes; then
  1860.       allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
  1861.       archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
  1862.     else
  1863.       allow_undefined_flag=' -expect_unresolved \*'
  1864.       archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
  1865.     fi
  1866.     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
  1867.     hardcode_libdir_separator=:
  1868.     ;;
  1869.  
  1870.   osf4* | osf5*)    # as osf3* with the addition of -msym flag
  1871.     if test "$GCC" = yes; then
  1872.       allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
  1873.       archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
  1874.       hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
  1875.     else
  1876.       allow_undefined_flag=' -expect_unresolved \*'
  1877.       archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
  1878.       archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
  1879.       $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
  1880.  
  1881.       #Both c and cxx compiler support -rpath directly
  1882.       hardcode_libdir_flag_spec='-rpath $libdir'
  1883.     fi
  1884.     hardcode_libdir_separator=:
  1885.     ;;
  1886.  
  1887.   sco3.2v5*)
  1888.     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1889.     hardcode_shlibpath_var=no
  1890.     runpath_var=LD_RUN_PATH
  1891.     hardcode_runpath_var=yes
  1892.     export_dynamic_flag_spec='${wl}-Bexport'
  1893.     ;;
  1894.  
  1895.   solaris*)
  1896.     # gcc --version < 3.0 without binutils cannot create self contained
  1897.     # shared libraries reliably, requiring libgcc.a to resolve some of
  1898.     # the object symbols generated in some cases.  Libraries that use
  1899.     # assert need libgcc.a to resolve __eprintf, for example.  Linking
  1900.     # a copy of libgcc.a into every shared library to guarantee resolving
  1901.     # such symbols causes other problems:  According to Tim Van Holder
  1902.     # <tim.van.holder@pandora.be>, C++ libraries end up with a separate
  1903.     # (to the application) exception stack for one thing.
  1904.     no_undefined_flag=' -z defs'
  1905.     if test "$GCC" = yes; then
  1906.       case `$CC --version 2>/dev/null` in
  1907.       [[12]].*)
  1908.     cat <<EOF 1>&2
  1909.  
  1910. *** Warning: Releases of GCC earlier than version 3.0 cannot reliably
  1911. *** create self contained shared libraries on Solaris systems, without
  1912. *** introducing a dependency on libgcc.a.  Therefore, libtool is disabling
  1913. *** -no-undefined support, which will at least allow you to build shared
  1914. *** libraries.  However, you may find that when you link such libraries
  1915. *** into an application without using GCC, you have to manually add
  1916. *** \`gcc --print-libgcc-file-name\` to the link command.  We urge you to
  1917. *** upgrade to a newer version of GCC.  Another option is to rebuild your
  1918. *** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
  1919.  
  1920. EOF
  1921.         no_undefined_flag=
  1922.     ;;
  1923.       esac
  1924.     fi
  1925.     # $CC -shared without GNU ld will not create a library from C++
  1926.     # object files and a static libstdc++, better avoid it by now
  1927.     archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1928.     archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
  1929.         $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
  1930.     hardcode_libdir_flag_spec='-R$libdir'
  1931.     hardcode_shlibpath_var=no
  1932.     case $host_os in
  1933.     solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
  1934.     *) # Supported since Solaris 2.6 (maybe 2.5.1?)
  1935.       whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
  1936.     esac
  1937.     link_all_deplibs=yes
  1938.     ;;
  1939.  
  1940.   sunos4*)
  1941.     if test "x$host_vendor" = xsequent; then
  1942.       # Use $CC to link under sequent, because it throws in some extra .o
  1943.       # files that make .init and .fini sections work.
  1944.       archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
  1945.     else
  1946.       archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
  1947.     fi
  1948.     hardcode_libdir_flag_spec='-L$libdir'
  1949.     hardcode_direct=yes
  1950.     hardcode_minus_L=yes
  1951.     hardcode_shlibpath_var=no
  1952.     ;;
  1953.  
  1954.   sysv4)
  1955.     if test "x$host_vendor" = xsno; then
  1956.       archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1957.       hardcode_direct=yes # is this really true???
  1958.     else
  1959.       archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1960.       hardcode_direct=no #Motorola manual says yes, but my tests say they lie
  1961.     fi
  1962.     runpath_var='LD_RUN_PATH'
  1963.     hardcode_shlibpath_var=no
  1964.     ;;
  1965.  
  1966.   sysv4.3*)
  1967.     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1968.     hardcode_shlibpath_var=no
  1969.     export_dynamic_flag_spec='-Bexport'
  1970.     ;;
  1971.  
  1972.   sysv5*)
  1973.     no_undefined_flag=' -z text'
  1974.     # $CC -shared without GNU ld will not create a library from C++
  1975.     # object files and a static libstdc++, better avoid it by now
  1976.     archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1977.     archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
  1978.         $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
  1979.     hardcode_libdir_flag_spec=
  1980.     hardcode_shlibpath_var=no
  1981.     runpath_var='LD_RUN_PATH'
  1982.     ;;
  1983.  
  1984.   uts4*)
  1985.     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1986.     hardcode_libdir_flag_spec='-L$libdir'
  1987.     hardcode_shlibpath_var=no
  1988.     ;;
  1989.  
  1990.   dgux*)
  1991.     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1992.     hardcode_libdir_flag_spec='-L$libdir'
  1993.     hardcode_shlibpath_var=no
  1994.     ;;
  1995.  
  1996.   sysv4*MP*)
  1997.     if test -d /usr/nec; then
  1998.       archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  1999.       hardcode_shlibpath_var=no
  2000.       runpath_var=LD_RUN_PATH
  2001.       hardcode_runpath_var=yes
  2002.       ld_shlibs=yes
  2003.     fi
  2004.     ;;
  2005.  
  2006.   sysv4.2uw2*)
  2007.     archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
  2008.     hardcode_direct=yes
  2009.     hardcode_minus_L=no
  2010.     hardcode_shlibpath_var=no
  2011.     hardcode_runpath_var=yes
  2012.     runpath_var=LD_RUN_PATH
  2013.     ;;
  2014.  
  2015.   sysv5uw7* | unixware7*)
  2016.     no_undefined_flag='${wl}-z ${wl}text'
  2017.     if test "$GCC" = yes; then
  2018.       archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  2019.     else
  2020.       archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  2021.     fi
  2022.     runpath_var='LD_RUN_PATH'
  2023.     hardcode_shlibpath_var=no
  2024.     ;;
  2025.  
  2026.   *)
  2027.     ld_shlibs=no
  2028.     ;;
  2029.   esac
  2030. fi
  2031. AC_MSG_RESULT([$ld_shlibs])
  2032. test "$ld_shlibs" = no && can_build_shared=no
  2033.  
  2034. # Check hardcoding attributes.
  2035. AC_MSG_CHECKING([how to hardcode library paths into programs])
  2036. hardcode_action=
  2037. if test -n "$hardcode_libdir_flag_spec" || \
  2038.    test -n "$runpath_var"; then
  2039.  
  2040.   # We can hardcode non-existant directories.
  2041.   if test "$hardcode_direct" != no &&
  2042.      # If the only mechanism to avoid hardcoding is shlibpath_var, we
  2043.      # have to relink, otherwise we might link with an installed library
  2044.      # when we should be linking with a yet-to-be-installed one
  2045.      ## test "$hardcode_shlibpath_var" != no &&
  2046.      test "$hardcode_minus_L" != no; then
  2047.     # Linking always hardcodes the temporary library directory.
  2048.     hardcode_action=relink
  2049.   else
  2050.     # We can link without hardcoding, and we can hardcode nonexisting dirs.
  2051.     hardcode_action=immediate
  2052.   fi
  2053. else
  2054.   # We cannot hardcode anything, or else we can only hardcode existing
  2055.   # directories.
  2056.   hardcode_action=unsupported
  2057. fi
  2058. AC_MSG_RESULT([$hardcode_action])
  2059.  
  2060. striplib=
  2061. old_striplib=
  2062. AC_MSG_CHECKING([whether stripping libraries is possible])
  2063. if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
  2064.   test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
  2065.   test -z "$striplib" && striplib="$STRIP --strip-unneeded"
  2066.   AC_MSG_RESULT([yes])
  2067. else
  2068.   AC_MSG_RESULT([no])
  2069. fi
  2070.  
  2071. reload_cmds='$LD$reload_flag -o $output$reload_objs'
  2072. test -z "$deplibs_check_method" && deplibs_check_method=unknown
  2073.  
  2074. # PORTME Fill in your ld.so characteristics
  2075. AC_MSG_CHECKING([dynamic linker characteristics])
  2076. library_names_spec=
  2077. libname_spec='lib$name'
  2078. soname_spec=
  2079. postinstall_cmds=
  2080. postuninstall_cmds=
  2081. finish_cmds=
  2082. finish_eval=
  2083. shlibpath_var=
  2084. shlibpath_overrides_runpath=unknown
  2085. version_type=none
  2086. dynamic_linker="$host_os ld.so"
  2087. sys_lib_dlsearch_path_spec="/lib /usr/lib"
  2088. sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
  2089.  
  2090. case $host_os in
  2091. aix3*)
  2092.   version_type=linux
  2093.   library_names_spec='${libname}${release}.so$versuffix $libname.a'
  2094.   shlibpath_var=LIBPATH
  2095.  
  2096.   # AIX has no versioning support, so we append a major version to the name.
  2097.   soname_spec='${libname}${release}.so$major'
  2098.   ;;
  2099.  
  2100. aix4* | aix5*)
  2101.   version_type=linux
  2102.   if test "$host_cpu" = ia64; then
  2103.     # AIX 5 supports IA64
  2104.     library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
  2105.     shlibpath_var=LD_LIBRARY_PATH
  2106.   else
  2107.     # With GCC up to 2.95.x, collect2 would create an import file
  2108.     # for dependence libraries.  The import file would start with
  2109.     # the line `#! .'.  This would cause the generated library to
  2110.     # depend on `.', always an invalid library.  This was fixed in
  2111.     # development snapshots of GCC prior to 3.0.
  2112.     case $host_os in
  2113.       aix4 | aix4.[[01]] | aix4.[[01]].*)
  2114.     if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
  2115.          echo ' yes '
  2116.          echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
  2117.       :
  2118.     else
  2119.       can_build_shared=no
  2120.     fi
  2121.     ;;
  2122.     esac
  2123.     # AIX (on Power*) has no versioning support, so currently we can
  2124.     # not hardcode correct soname into executable. Probably we can
  2125.     # add versioning support to collect2, so additional links can
  2126.     # be useful in future.
  2127.     if test "$aix_use_runtimelinking" = yes; then
  2128.       # If using run time linking (on AIX 4.2 or later) use lib<name>.so
  2129.       # instead of lib<name>.a to let people know that these are not
  2130.       # typical AIX shared libraries.
  2131.       library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  2132.     else
  2133.       # We preserve .a as extension for shared libraries through AIX4.2
  2134.       # and later when we are not doing run time linking.
  2135.       library_names_spec='${libname}${release}.a $libname.a'
  2136.       soname_spec='${libname}${release}.so$major'
  2137.     fi
  2138.     shlibpath_var=LIBPATH
  2139.   fi
  2140.   ;;
  2141.  
  2142. amigaos*)
  2143.   library_names_spec='$libname.ixlibrary $libname.a'
  2144.   # Create ${libname}_ixlibrary.a entries in /sys/libs.
  2145.   finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
  2146.   ;;
  2147.  
  2148. beos*)
  2149.   library_names_spec='${libname}.so'
  2150.   dynamic_linker="$host_os ld.so"
  2151.   shlibpath_var=LIBRARY_PATH
  2152.   ;;
  2153.  
  2154. bsdi4*)
  2155.   version_type=linux
  2156.   need_version=no
  2157.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  2158.   soname_spec='${libname}${release}.so$major'
  2159.   finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
  2160.   shlibpath_var=LD_LIBRARY_PATH
  2161.   sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
  2162.   sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
  2163.   export_dynamic_flag_spec=-rdynamic
  2164.   # the default ld.so.conf also contains /usr/contrib/lib and
  2165.   # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
  2166.   # libtool to hard-code these into programs
  2167.   ;;
  2168.  
  2169. cygwin* | mingw* | pw32*)
  2170.   version_type=windows
  2171.   need_version=no
  2172.   need_lib_prefix=no
  2173.   case $GCC,$host_os in
  2174.   yes,cygwin*)
  2175.     library_names_spec='$libname.dll.a'
  2176.     soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
  2177.     postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
  2178.       dldir=$destdir/`dirname \$dlpath`~
  2179.       test -d \$dldir || mkdir -p \$dldir~
  2180.       $install_prog .libs/$dlname \$dldir/$dlname'
  2181.     postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
  2182.       dlpath=$dir/\$dldll~
  2183.        $rm \$dlpath'
  2184.     ;;
  2185.   yes,mingw*)
  2186.     library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
  2187.     sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
  2188.     ;;
  2189.   yes,pw32*)
  2190.     library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
  2191.     ;;
  2192.   *)
  2193.     library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib'
  2194.     ;;
  2195.   esac
  2196.   dynamic_linker='Win32 ld.exe'
  2197.   # FIXME: first we should search . and the directory the executable is in
  2198.   shlibpath_var=PATH
  2199.   ;;
  2200.  
  2201. darwin* | rhapsody*)
  2202.   dynamic_linker="$host_os dyld"
  2203.   version_type=darwin
  2204.   need_lib_prefix=no
  2205.   need_version=no
  2206.   # FIXME: Relying on posixy $() will cause problems for
  2207.   #        cross-compilation, but unfortunately the echo tests do not
  2208.   #        yet detect zsh echo's removal of \ escapes.
  2209.   library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
  2210.   soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
  2211.   shlibpath_overrides_runpath=yes
  2212.   shlibpath_var=DYLD_LIBRARY_PATH
  2213.   ;;
  2214.  
  2215. freebsd1*)
  2216.   dynamic_linker=no
  2217.   ;;
  2218.  
  2219. freebsd*)
  2220.   objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
  2221.   version_type=freebsd-$objformat
  2222.   case $version_type in
  2223.     freebsd-elf*)
  2224.       library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
  2225.       need_version=no
  2226.       need_lib_prefix=no
  2227.       ;;
  2228.     freebsd-*)
  2229.       library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
  2230.       need_version=yes
  2231.       ;;
  2232.   esac
  2233.   shlibpath_var=LD_LIBRARY_PATH
  2234.   case $host_os in
  2235.   freebsd2*)
  2236.     shlibpath_overrides_runpath=yes
  2237.     ;;
  2238.   *)
  2239.     shlibpath_overrides_runpath=no
  2240.     hardcode_into_libs=yes
  2241.     ;;
  2242.   esac
  2243.   ;;
  2244.  
  2245. gnu*)
  2246.   version_type=linux
  2247.   need_lib_prefix=no
  2248.   need_version=no
  2249.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
  2250.   soname_spec='${libname}${release}.so$major'
  2251.   shlibpath_var=LD_LIBRARY_PATH
  2252.   hardcode_into_libs=yes
  2253.   ;;
  2254.  
  2255. hpux9* | hpux10* | hpux11*)
  2256.   # Give a soname corresponding to the major version so that dld.sl refuses to
  2257.   # link against other versions.
  2258.   dynamic_linker="$host_os dld.sl"
  2259.   version_type=sunos
  2260.   need_lib_prefix=no
  2261.   need_version=no
  2262.   shlibpath_var=SHLIB_PATH
  2263.   shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
  2264.   library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
  2265.   soname_spec='${libname}${release}.sl$major'
  2266.   # HP-UX runs *really* slowly unless shared libraries are mode 555.
  2267.   postinstall_cmds='chmod 555 $lib'
  2268.   ;;
  2269.  
  2270. irix5* | irix6* | nonstopux*)
  2271.   case $host_os in
  2272.     nonstopux*) version_type=nonstopux ;;
  2273.     *)          version_type=irix ;;
  2274.   esac
  2275.   need_lib_prefix=no
  2276.   need_version=no
  2277.   soname_spec='${libname}${release}.so$major'
  2278.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
  2279.   case $host_os in
  2280.   irix5* | nonstopux*)
  2281.     libsuff= shlibsuff=
  2282.     ;;
  2283.   *)
  2284.     case $LD in # libtool.m4 will add one of these switches to LD
  2285.     *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
  2286.     *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
  2287.     *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
  2288.     *) libsuff= shlibsuff= libmagic=never-match;;
  2289.     esac
  2290.     ;;
  2291.   esac
  2292.   shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
  2293.   shlibpath_overrides_runpath=no
  2294.   sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
  2295.   sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
  2296.   ;;
  2297.  
  2298. # No shared lib support for Linux oldld, aout, or coff.
  2299. linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
  2300.   dynamic_linker=no
  2301.   ;;
  2302.  
  2303. # This must be Linux ELF.
  2304. linux-gnu*)
  2305.   version_type=linux
  2306.   need_lib_prefix=no
  2307.   need_version=no
  2308.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  2309.   soname_spec='${libname}${release}.so$major'
  2310.   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
  2311.   shlibpath_var=LD_LIBRARY_PATH
  2312.   shlibpath_overrides_runpath=no
  2313.   # This implies no fast_install, which is unacceptable.
  2314.   # Some rework will be needed to allow for fast_install
  2315.   # before this can be enabled.
  2316.   hardcode_into_libs=yes
  2317.  
  2318.   # We used to test for /lib/ld.so.1 and disable shared libraries on
  2319.   # powerpc, because MkLinux only supported shared libraries with the
  2320.   # GNU dynamic linker.  Since this was broken with cross compilers,
  2321.   # most powerpc-linux boxes support dynamic linking these days and
  2322.   # people can always --disable-shared, the test was removed, and we
  2323.   # assume the GNU/Linux dynamic linker is in use.
  2324.   dynamic_linker='GNU/Linux ld.so'
  2325.   ;;
  2326.  
  2327. netbsd*)
  2328.   version_type=sunos
  2329.   need_lib_prefix=no
  2330.   need_version=no
  2331.   if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
  2332.     library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
  2333.     finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
  2334.     dynamic_linker='NetBSD (a.out) ld.so'
  2335.   else
  2336.     library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
  2337.     soname_spec='${libname}${release}.so$major'
  2338.     dynamic_linker='NetBSD ld.elf_so'
  2339.   fi
  2340.   shlibpath_var=LD_LIBRARY_PATH
  2341.   shlibpath_overrides_runpath=yes
  2342.   hardcode_into_libs=yes
  2343.   ;;
  2344.  
  2345. newsos6)
  2346.   version_type=linux
  2347.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  2348.   shlibpath_var=LD_LIBRARY_PATH
  2349.   shlibpath_overrides_runpath=yes
  2350.   ;;
  2351.  
  2352. openbsd*)
  2353.   version_type=sunos
  2354.   need_lib_prefix=no
  2355.   need_version=no
  2356.   if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
  2357.     case "$host_os" in
  2358.     openbsd2.[[89]] | openbsd2.[[89]].*)
  2359.       shlibpath_overrides_runpath=no
  2360.       ;;
  2361.     *)
  2362.       shlibpath_overrides_runpath=yes
  2363.       ;;
  2364.     esac
  2365.   else
  2366.     shlibpath_overrides_runpath=yes
  2367.   fi
  2368.   library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
  2369.   finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
  2370.   shlibpath_var=LD_LIBRARY_PATH
  2371.   ;;
  2372.  
  2373. os2*)
  2374.   libname_spec='$name'
  2375.   need_lib_prefix=no
  2376.   library_names_spec='$libname.dll $libname.a'
  2377.   dynamic_linker='OS/2 ld.exe'
  2378.   shlibpath_var=LIBPATH
  2379.   ;;
  2380.  
  2381. osf3* | osf4* | osf5*)
  2382.   version_type=osf
  2383.   need_version=no
  2384.   soname_spec='${libname}${release}.so'
  2385.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
  2386.   shlibpath_var=LD_LIBRARY_PATH
  2387.   sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
  2388.   sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
  2389.   ;;
  2390.  
  2391. sco3.2v5*)
  2392.   version_type=osf
  2393.   soname_spec='${libname}${release}.so$major'
  2394.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  2395.   shlibpath_var=LD_LIBRARY_PATH
  2396.   ;;
  2397.  
  2398. solaris*)
  2399.   version_type=linux
  2400.   need_lib_prefix=no
  2401.   need_version=no
  2402.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  2403.   soname_spec='${libname}${release}.so$major'
  2404.   shlibpath_var=LD_LIBRARY_PATH
  2405.   shlibpath_overrides_runpath=yes
  2406.   hardcode_into_libs=yes
  2407.   # ldd complains unless libraries are executable
  2408.   postinstall_cmds='chmod +x $lib'
  2409.   ;;
  2410.  
  2411. sunos4*)
  2412.   version_type=sunos
  2413.   library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
  2414.   finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
  2415.   shlibpath_var=LD_LIBRARY_PATH
  2416.   shlibpath_overrides_runpath=yes
  2417.   if test "$with_gnu_ld" = yes; then
  2418.     need_lib_prefix=no
  2419.   fi
  2420.   need_version=yes
  2421.   ;;
  2422.  
  2423. sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
  2424.   version_type=linux
  2425.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  2426.   soname_spec='${libname}${release}.so$major'
  2427.   shlibpath_var=LD_LIBRARY_PATH
  2428.   case $host_vendor in
  2429.     sni)
  2430.       shlibpath_overrides_runpath=no
  2431.       ;;
  2432.     motorola)
  2433.       need_lib_prefix=no
  2434.       need_version=no
  2435.       shlibpath_overrides_runpath=no
  2436.       sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
  2437.       ;;
  2438.   esac
  2439.   ;;
  2440.  
  2441. uts4*)
  2442.   version_type=linux
  2443.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  2444.   soname_spec='${libname}${release}.so$major'
  2445.   shlibpath_var=LD_LIBRARY_PATH
  2446.   ;;
  2447.  
  2448. dgux*)
  2449.   version_type=linux
  2450.   need_lib_prefix=no
  2451.   need_version=no
  2452.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  2453.   soname_spec='${libname}${release}.so$major'
  2454.   shlibpath_var=LD_LIBRARY_PATH
  2455.   ;;
  2456.  
  2457. sysv4*MP*)
  2458.   if test -d /usr/nec ;then
  2459.     version_type=linux
  2460.     library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
  2461.     soname_spec='$libname.so.$major'
  2462.     shlibpath_var=LD_LIBRARY_PATH
  2463.   fi
  2464.   ;;
  2465.  
  2466. *)
  2467.   dynamic_linker=no
  2468.   ;;
  2469. esac
  2470. AC_MSG_RESULT([$dynamic_linker])
  2471. test "$dynamic_linker" = no && can_build_shared=no
  2472.  
  2473. # Report the final consequences.
  2474. AC_MSG_CHECKING([if libtool supports shared libraries])
  2475. AC_MSG_RESULT([$can_build_shared])
  2476.  
  2477. AC_MSG_CHECKING([whether to build shared libraries])
  2478. test "$can_build_shared" = "no" && enable_shared=no
  2479.  
  2480. # On AIX, shared libraries and static libraries use the same namespace, and
  2481. # are all built from PIC.
  2482. case "$host_os" in
  2483. aix3*)
  2484.   test "$enable_shared" = yes && enable_static=no
  2485.   if test -n "$RANLIB"; then
  2486.     archive_cmds="$archive_cmds~\$RANLIB \$lib"
  2487.     postinstall_cmds='$RANLIB $lib'
  2488.   fi
  2489.   ;;
  2490.  
  2491. aix4*)
  2492.   if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
  2493.     test "$enable_shared" = yes && enable_static=no
  2494.   fi
  2495.   ;;
  2496. esac
  2497. AC_MSG_RESULT([$enable_shared])
  2498.  
  2499. AC_MSG_CHECKING([whether to build static libraries])
  2500. # Make sure either enable_shared or enable_static is yes.
  2501. test "$enable_shared" = yes || enable_static=yes
  2502. AC_MSG_RESULT([$enable_static])
  2503.  
  2504. if test "$hardcode_action" = relink; then
  2505.   # Fast installation is not supported
  2506.   enable_fast_install=no
  2507. elif test "$shlibpath_overrides_runpath" = yes ||
  2508.      test "$enable_shared" = no; then
  2509.   # Fast installation is not necessary
  2510.   enable_fast_install=needless
  2511. fi
  2512.  
  2513. variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
  2514. if test "$GCC" = yes; then
  2515.   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
  2516. fi
  2517.  
  2518. AC_LIBTOOL_DLOPEN_SELF
  2519.  
  2520. if test "$enable_shared" = yes && test "$GCC" = yes; then
  2521.   case $archive_cmds in
  2522.   *'~'*)
  2523.     # FIXME: we may have to deal with multi-command sequences.
  2524.     ;;
  2525.   '$CC '*)
  2526.     # Test whether the compiler implicitly links with -lc since on some
  2527.     # systems, -lgcc has to come before -lc. If gcc already passes -lc
  2528.     # to ld, don't add -lc before -lgcc.
  2529.     AC_MSG_CHECKING([whether -lc should be explicitly linked in])
  2530.     AC_CACHE_VAL([lt_cv_archive_cmds_need_lc],
  2531.     [$rm conftest*
  2532.     echo 'static int dummy;' > conftest.$ac_ext
  2533.  
  2534.     if AC_TRY_EVAL(ac_compile); then
  2535.       soname=conftest
  2536.       lib=conftest
  2537.       libobjs=conftest.$ac_objext
  2538.       deplibs=
  2539.       wl=$lt_cv_prog_cc_wl
  2540.       compiler_flags=-v
  2541.       linker_flags=-v
  2542.       verstring=
  2543.       output_objdir=.
  2544.       libname=conftest
  2545.       save_allow_undefined_flag=$allow_undefined_flag
  2546.       allow_undefined_flag=
  2547.       if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
  2548.       then
  2549.     lt_cv_archive_cmds_need_lc=no
  2550.       else
  2551.     lt_cv_archive_cmds_need_lc=yes
  2552.       fi
  2553.       allow_undefined_flag=$save_allow_undefined_flag
  2554.     else
  2555.       cat conftest.err 1>&5
  2556.     fi])
  2557.     AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc])
  2558.     ;;
  2559.   esac
  2560. fi
  2561. need_lc=${lt_cv_archive_cmds_need_lc-yes}
  2562.  
  2563. # The second clause should only fire when bootstrapping the
  2564. # libtool distribution, otherwise you forgot to ship ltmain.sh
  2565. # with your package, and you will get complaints that there are
  2566. # no rules to generate ltmain.sh.
  2567. if test -f "$ltmain"; then
  2568.   :
  2569. else
  2570.   # If there is no Makefile yet, we rely on a make rule to execute
  2571.   # `config.status --recheck' to rerun these tests and create the
  2572.   # libtool script then.
  2573.   test -f Makefile && make "$ltmain"
  2574. fi
  2575.  
  2576. if test -f "$ltmain"; then
  2577.   trap "$rm \"${ofile}T\"; exit 1" 1 2 15
  2578.   $rm -f "${ofile}T"
  2579.  
  2580.   echo creating $ofile
  2581.  
  2582.   # Now quote all the things that may contain metacharacters while being
  2583.   # careful not to overquote the AC_SUBSTed values.  We take copies of the
  2584.   # variables and quote the copies for generation of the libtool script.
  2585.   for var in echo old_CC old_CFLAGS \
  2586.     AR AR_FLAGS CC LD LN_S NM SHELL \
  2587.     reload_flag reload_cmds wl \
  2588.     pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
  2589.     thread_safe_flag_spec whole_archive_flag_spec libname_spec \
  2590.     library_names_spec soname_spec \
  2591.     RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
  2592.     old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
  2593.     postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
  2594.     old_striplib striplib file_magic_cmd export_symbols_cmds \
  2595.     deplibs_check_method allow_undefined_flag no_undefined_flag \
  2596.     finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
  2597.     global_symbol_to_c_name_address \
  2598.     hardcode_libdir_flag_spec hardcode_libdir_separator  \
  2599.     sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
  2600.     compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
  2601.  
  2602.     case $var in
  2603.     reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
  2604.     old_postinstall_cmds | old_postuninstall_cmds | \
  2605.     export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
  2606.     extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
  2607.     postinstall_cmds | postuninstall_cmds | \
  2608.     finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
  2609.       # Double-quote double-evaled strings.
  2610.       eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
  2611.       ;;
  2612.     *)
  2613.       eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
  2614.       ;;
  2615.     esac
  2616.   done
  2617.  
  2618.   cat <<__EOF__ > "${ofile}T"
  2619. #! $SHELL
  2620.  
  2621. # `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
  2622. # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
  2623. # NOTE: Changes made to this file will be lost: look at ltmain.sh.
  2624. #
  2625. # Copyright (C) 1996-2000 Free Software Foundation, Inc.
  2626. # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
  2627. #
  2628. # This program is free software; you can redistribute it and/or modify
  2629. # it under the terms of the GNU General Public License as published by
  2630. # the Free Software Foundation; either version 2 of the License, or
  2631. # (at your option) any later version.
  2632. #
  2633. # This program is distributed in the hope that it will be useful, but
  2634. # WITHOUT ANY WARRANTY; without even the implied warranty of
  2635. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  2636. # General Public License for more details.
  2637. #
  2638. # You should have received a copy of the GNU General Public License
  2639. # along with this program; if not, write to the Free Software
  2640. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  2641. #
  2642. # As a special exception to the GNU General Public License, if you
  2643. # distribute this file as part of a program that contains a
  2644. # configuration script generated by Autoconf, you may include it under
  2645. # the same distribution terms that you use for the rest of that program.
  2646.  
  2647. # Sed that helps us avoid accidentally triggering echo(1) options like -n.
  2648. Xsed="sed -e s/^X//"
  2649.  
  2650. # The HP-UX ksh and POSIX shell print the target directory to stdout
  2651. # if CDPATH is set.
  2652. if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
  2653.  
  2654. # ### BEGIN LIBTOOL CONFIG
  2655.  
  2656. # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
  2657.  
  2658. # Shell to use when invoking shell scripts.
  2659. SHELL=$lt_SHELL
  2660.  
  2661. # Whether or not to build shared libraries.
  2662. build_libtool_libs=$enable_shared
  2663.  
  2664. # Whether or not to build static libraries.
  2665. build_old_libs=$enable_static
  2666.  
  2667. # Whether or not to add -lc for building shared libraries.
  2668. build_libtool_need_lc=$need_lc
  2669.  
  2670. # Whether or not to optimize for fast installation.
  2671. fast_install=$enable_fast_install
  2672.  
  2673. # The host system.
  2674. host_alias=$host_alias
  2675. host=$host
  2676.  
  2677. # An echo program that does not interpret backslashes.
  2678. echo=$lt_echo
  2679.  
  2680. # The archiver.
  2681. AR=$lt_AR
  2682. AR_FLAGS=$lt_AR_FLAGS
  2683.  
  2684. # The default C compiler.
  2685. CC=$lt_CC
  2686.  
  2687. # Is the compiler the GNU C compiler?
  2688. with_gcc=$GCC
  2689.  
  2690. # The linker used to build libraries.
  2691. LD=$lt_LD
  2692.  
  2693. # Whether we need hard or soft links.
  2694. LN_S=$lt_LN_S
  2695.  
  2696. # A BSD-compatible nm program.
  2697. NM=$lt_NM
  2698.  
  2699. # A symbol stripping program
  2700. STRIP=$STRIP
  2701.  
  2702. # Used to examine libraries when file_magic_cmd begins "file"
  2703. MAGIC_CMD=$MAGIC_CMD
  2704.  
  2705. # Used on cygwin: DLL creation program.
  2706. DLLTOOL="$DLLTOOL"
  2707.  
  2708. # Used on cygwin: object dumper.
  2709. OBJDUMP="$OBJDUMP"
  2710.  
  2711. # Used on cygwin: assembler.
  2712. AS="$AS"
  2713.  
  2714. # The name of the directory that contains temporary libtool files.
  2715. objdir=$objdir
  2716.  
  2717. # How to create reloadable object files.
  2718. reload_flag=$lt_reload_flag
  2719. reload_cmds=$lt_reload_cmds
  2720.  
  2721. # How to pass a linker flag through the compiler.
  2722. wl=$lt_wl
  2723.  
  2724. # Object file suffix (normally "o").
  2725. objext="$ac_objext"
  2726.  
  2727. # Old archive suffix (normally "a").
  2728. libext="$libext"
  2729.  
  2730. # Executable file suffix (normally "").
  2731. exeext="$exeext"
  2732.  
  2733. # Additional compiler flags for building library objects.
  2734. pic_flag=$lt_pic_flag
  2735. pic_mode=$pic_mode
  2736.  
  2737. # Does compiler simultaneously support -c and -o options?
  2738. compiler_c_o=$lt_compiler_c_o
  2739.  
  2740. # Can we write directly to a .lo ?
  2741. compiler_o_lo=$lt_compiler_o_lo
  2742.  
  2743. # Must we lock files when doing compilation ?
  2744. need_locks=$lt_need_locks
  2745.  
  2746. # Do we need the lib prefix for modules?
  2747. need_lib_prefix=$need_lib_prefix
  2748.  
  2749. # Do we need a version for libraries?
  2750. need_version=$need_version
  2751.  
  2752. # Whether dlopen is supported.
  2753. dlopen_support=$enable_dlopen
  2754.  
  2755. # Whether dlopen of programs is supported.
  2756. dlopen_self=$enable_dlopen_self
  2757.  
  2758. # Whether dlopen of statically linked programs is supported.
  2759. dlopen_self_static=$enable_dlopen_self_static
  2760.  
  2761. # Compiler flag to prevent dynamic linking.
  2762. link_static_flag=$lt_link_static_flag
  2763.  
  2764. # Compiler flag to turn off builtin functions.
  2765. no_builtin_flag=$lt_no_builtin_flag
  2766.  
  2767. # Compiler flag to allow reflexive dlopens.
  2768. export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
  2769.  
  2770. # Compiler flag to generate shared objects directly from archives.
  2771. whole_archive_flag_spec=$lt_whole_archive_flag_spec
  2772.  
  2773. # Compiler flag to generate thread-safe objects.
  2774. thread_safe_flag_spec=$lt_thread_safe_flag_spec
  2775.  
  2776. # Library versioning type.
  2777. version_type=$version_type
  2778.  
  2779. # Format of library name prefix.
  2780. libname_spec=$lt_libname_spec
  2781.  
  2782. # List of archive names.  First name is the real one, the rest are links.
  2783. # The last name is the one that the linker finds with -lNAME.
  2784. library_names_spec=$lt_library_names_spec
  2785.  
  2786. # The coded name of the library, if different from the real name.
  2787. soname_spec=$lt_soname_spec
  2788.  
  2789. # Commands used to build and install an old-style archive.
  2790. RANLIB=$lt_RANLIB
  2791. old_archive_cmds=$lt_old_archive_cmds
  2792. old_postinstall_cmds=$lt_old_postinstall_cmds
  2793. old_postuninstall_cmds=$lt_old_postuninstall_cmds
  2794.  
  2795. # Create an old-style archive from a shared archive.
  2796. old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
  2797.  
  2798. # Create a temporary old-style archive to link instead of a shared archive.
  2799. old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
  2800.  
  2801. # Commands used to build and install a shared archive.
  2802. archive_cmds=$lt_archive_cmds
  2803. archive_expsym_cmds=$lt_archive_expsym_cmds
  2804. postinstall_cmds=$lt_postinstall_cmds
  2805. postuninstall_cmds=$lt_postuninstall_cmds
  2806.  
  2807. # Commands to strip libraries.
  2808. old_striplib=$lt_old_striplib
  2809. striplib=$lt_striplib
  2810.  
  2811. # Method to check whether dependent libraries are shared objects.
  2812. deplibs_check_method=$lt_deplibs_check_method
  2813.  
  2814. # Command to use when deplibs_check_method == file_magic.
  2815. file_magic_cmd=$lt_file_magic_cmd
  2816.  
  2817. # Flag that allows shared libraries with undefined symbols to be built.
  2818. allow_undefined_flag=$lt_allow_undefined_flag
  2819.  
  2820. # Flag that forces no undefined symbols.
  2821. no_undefined_flag=$lt_no_undefined_flag
  2822.  
  2823. # Commands used to finish a libtool library installation in a directory.
  2824. finish_cmds=$lt_finish_cmds
  2825.  
  2826. # Same as above, but a single script fragment to be evaled but not shown.
  2827. finish_eval=$lt_finish_eval
  2828.  
  2829. # Take the output of nm and produce a listing of raw symbols and C names.
  2830. global_symbol_pipe=$lt_global_symbol_pipe
  2831.  
  2832. # Transform the output of nm in a proper C declaration
  2833. global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
  2834.  
  2835. # Transform the output of nm in a C name address pair
  2836. global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
  2837.  
  2838. # This is the shared library runtime path variable.
  2839. runpath_var=$runpath_var
  2840.  
  2841. # This is the shared library path variable.
  2842. shlibpath_var=$shlibpath_var
  2843.  
  2844. # Is shlibpath searched before the hard-coded library search path?
  2845. shlibpath_overrides_runpath=$shlibpath_overrides_runpath
  2846.  
  2847. # How to hardcode a shared library path into an executable.
  2848. hardcode_action=$hardcode_action
  2849.  
  2850. # Whether we should hardcode library paths into libraries.
  2851. hardcode_into_libs=$hardcode_into_libs
  2852.  
  2853. # Flag to hardcode \$libdir into a binary during linking.
  2854. # This must work even if \$libdir does not exist.
  2855. hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
  2856.  
  2857. # Whether we need a single -rpath flag with a separated argument.
  2858. hardcode_libdir_separator=$lt_hardcode_libdir_separator
  2859.  
  2860. # Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
  2861. # resulting binary.
  2862. hardcode_direct=$hardcode_direct
  2863.  
  2864. # Set to yes if using the -LDIR flag during linking hardcodes DIR into the
  2865. # resulting binary.
  2866. hardcode_minus_L=$hardcode_minus_L
  2867.  
  2868. # Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
  2869. # the resulting binary.
  2870. hardcode_shlibpath_var=$hardcode_shlibpath_var
  2871.  
  2872. # Variables whose values should be saved in libtool wrapper scripts and
  2873. # restored at relink time.
  2874. variables_saved_for_relink="$variables_saved_for_relink"
  2875.  
  2876. # Whether libtool must link a program against all its dependency libraries.
  2877. link_all_deplibs=$link_all_deplibs
  2878.  
  2879. # Compile-time system search path for libraries
  2880. sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
  2881.  
  2882. # Run-time system search path for libraries
  2883. sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
  2884.  
  2885. # Fix the shell variable \$srcfile for the compiler.
  2886. fix_srcfile_path="$fix_srcfile_path"
  2887.  
  2888. # Set to yes if exported symbols are required.
  2889. always_export_symbols=$always_export_symbols
  2890.  
  2891. # The commands to list exported symbols.
  2892. export_symbols_cmds=$lt_export_symbols_cmds
  2893.  
  2894. # The commands to extract the exported symbol list from a shared archive.
  2895. extract_expsyms_cmds=$lt_extract_expsyms_cmds
  2896.  
  2897. # Symbols that should not be listed in the preloaded symbols.
  2898. exclude_expsyms=$lt_exclude_expsyms
  2899.  
  2900. # Symbols that must always be exported.
  2901. include_expsyms=$lt_include_expsyms
  2902.  
  2903. # ### END LIBTOOL CONFIG
  2904.  
  2905. __EOF__
  2906.  
  2907.   case $host_os in
  2908.   aix3*)
  2909.     cat <<\EOF >> "${ofile}T"
  2910.  
  2911. # AIX sometimes has problems with the GCC collect2 program.  For some
  2912. # reason, if we set the COLLECT_NAMES environment variable, the problems
  2913. # vanish in a puff of smoke.
  2914. if test "X${COLLECT_NAMES+set}" != Xset; then
  2915.   COLLECT_NAMES=
  2916.   export COLLECT_NAMES
  2917. fi
  2918. EOF
  2919.     ;;
  2920.   esac
  2921.  
  2922.   case $host_os in
  2923.   cygwin* | mingw* | pw32* | os2*)
  2924.     cat <<'EOF' >> "${ofile}T"
  2925.       # This is a source program that is used to create dlls on Windows
  2926.       # Don't remove nor modify the starting and closing comments
  2927. # /* ltdll.c starts here */
  2928. # #define WIN32_LEAN_AND_MEAN
  2929. # #include <windows.h>
  2930. # #undef WIN32_LEAN_AND_MEAN
  2931. # #include <stdio.h>
  2932. #
  2933. # #ifndef __CYGWIN__
  2934. # #  ifdef __CYGWIN32__
  2935. # #    define __CYGWIN__ __CYGWIN32__
  2936. # #  endif
  2937. # #endif
  2938. #
  2939. # #ifdef __cplusplus
  2940. # extern "C" {
  2941. # #endif
  2942. # BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
  2943. # #ifdef __cplusplus
  2944. # }
  2945. # #endif
  2946. #
  2947. # #ifdef __CYGWIN__
  2948. # #include <cygwin/cygwin_dll.h>
  2949. # DECLARE_CYGWIN_DLL( DllMain );
  2950. # #endif
  2951. # HINSTANCE __hDllInstance_base;
  2952. #
  2953. # BOOL APIENTRY
  2954. # DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
  2955. # {
  2956. #   __hDllInstance_base = hInst;
  2957. #   return TRUE;
  2958. # }
  2959. # /* ltdll.c ends here */
  2960.     # This is a source program that is used to create import libraries
  2961.     # on Windows for dlls which lack them. Don't remove nor modify the
  2962.     # starting and closing comments
  2963. # /* impgen.c starts here */
  2964. # /*   Copyright (C) 1999-2000 Free Software Foundation, Inc.
  2965. #
  2966. #  This file is part of GNU libtool.
  2967. #
  2968. #  This program is free software; you can redistribute it and/or modify
  2969. #  it under the terms of the GNU General Public License as published by
  2970. #  the Free Software Foundation; either version 2 of the License, or
  2971. #  (at your option) any later version.
  2972. #
  2973. #  This program is distributed in the hope that it will be useful,
  2974. #  but WITHOUT ANY WARRANTY; without even the implied warranty of
  2975. #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  2976. #  GNU General Public License for more details.
  2977. #
  2978. #  You should have received a copy of the GNU General Public License
  2979. #  along with this program; if not, write to the Free Software
  2980. #  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  2981. #  */
  2982. #
  2983. # #include <stdio.h>        /* for printf() */
  2984. # #include <unistd.h>        /* for open(), lseek(), read() */
  2985. # #include <fcntl.h>        /* for O_RDONLY, O_BINARY */
  2986. # #include <string.h>        /* for strdup() */
  2987. #
  2988. # /* O_BINARY isn't required (or even defined sometimes) under Unix */
  2989. # #ifndef O_BINARY
  2990. # #define O_BINARY 0
  2991. # #endif
  2992. #
  2993. # static unsigned int
  2994. # pe_get16 (fd, offset)
  2995. #      int fd;
  2996. #      int offset;
  2997. # {
  2998. #   unsigned char b[2];
  2999. #   lseek (fd, offset, SEEK_SET);
  3000. #   read (fd, b, 2);
  3001. #   return b[0] + (b[1]<<8);
  3002. # }
  3003. #
  3004. # static unsigned int
  3005. # pe_get32 (fd, offset)
  3006. #     int fd;
  3007. #     int offset;
  3008. # {
  3009. #   unsigned char b[4];
  3010. #   lseek (fd, offset, SEEK_SET);
  3011. #   read (fd, b, 4);
  3012. #   return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
  3013. # }
  3014. #
  3015. # static unsigned int
  3016. # pe_as32 (ptr)
  3017. #      void *ptr;
  3018. # {
  3019. #   unsigned char *b = ptr;
  3020. #   return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
  3021. # }
  3022. #
  3023. # int
  3024. # main (argc, argv)
  3025. #     int argc;
  3026. #     char *argv[];
  3027. # {
  3028. #     int dll;
  3029. #     unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
  3030. #     unsigned long export_rva, export_size, nsections, secptr, expptr;
  3031. #     unsigned long name_rvas, nexp;
  3032. #     unsigned char *expdata, *erva;
  3033. #     char *filename, *dll_name;
  3034. #
  3035. #     filename = argv[1];
  3036. #
  3037. #     dll = open(filename, O_RDONLY|O_BINARY);
  3038. #     if (dll < 1)
  3039. #     return 1;
  3040. #
  3041. #     dll_name = filename;
  3042. #
  3043. #     for (i=0; filename[i]; i++)
  3044. #     if (filename[i] == '/' || filename[i] == '\\'  || filename[i] == ':')
  3045. #         dll_name = filename + i +1;
  3046. #
  3047. #     pe_header_offset = pe_get32 (dll, 0x3c);
  3048. #     opthdr_ofs = pe_header_offset + 4 + 20;
  3049. #     num_entries = pe_get32 (dll, opthdr_ofs + 92);
  3050. #
  3051. #     if (num_entries < 1) /* no exports */
  3052. #     return 1;
  3053. #
  3054. #     export_rva = pe_get32 (dll, opthdr_ofs + 96);
  3055. #     export_size = pe_get32 (dll, opthdr_ofs + 100);
  3056. #     nsections = pe_get16 (dll, pe_header_offset + 4 +2);
  3057. #     secptr = (pe_header_offset + 4 + 20 +
  3058. #           pe_get16 (dll, pe_header_offset + 4 + 16));
  3059. #
  3060. #     expptr = 0;
  3061. #     for (i = 0; i < nsections; i++)
  3062. #     {
  3063. #     char sname[8];
  3064. #     unsigned long secptr1 = secptr + 40 * i;
  3065. #     unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
  3066. #     unsigned long vsize = pe_get32 (dll, secptr1 + 16);
  3067. #     unsigned long fptr = pe_get32 (dll, secptr1 + 20);
  3068. #     lseek(dll, secptr1, SEEK_SET);
  3069. #     read(dll, sname, 8);
  3070. #     if (vaddr <= export_rva && vaddr+vsize > export_rva)
  3071. #     {
  3072. #         expptr = fptr + (export_rva - vaddr);
  3073. #         if (export_rva + export_size > vaddr + vsize)
  3074. #         export_size = vsize - (export_rva - vaddr);
  3075. #         break;
  3076. #     }
  3077. #     }
  3078. #
  3079. #     expdata = (unsigned char*)malloc(export_size);
  3080. #     lseek (dll, expptr, SEEK_SET);
  3081. #     read (dll, expdata, export_size);
  3082. #     erva = expdata - export_rva;
  3083. #
  3084. #     nexp = pe_as32 (expdata+24);
  3085. #     name_rvas = pe_as32 (expdata+32);
  3086. #
  3087. #     printf ("EXPORTS\n");
  3088. #     for (i = 0; i<nexp; i++)
  3089. #     {
  3090. #     unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
  3091. #     printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
  3092. #     }
  3093. #
  3094. #     return 0;
  3095. # }
  3096. # /* impgen.c ends here */
  3097.  
  3098. EOF
  3099.     ;;
  3100.   esac
  3101.  
  3102.   # We use sed instead of cat because bash on DJGPP gets confused if
  3103.   # if finds mixed CR/LF and LF-only lines.  Since sed operates in
  3104.   # text mode, it properly converts lines to CR/LF.  This bash problem
  3105.   # is reportedly fixed, but why not run on old versions too?
  3106.   sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
  3107.  
  3108.   mv -f "${ofile}T" "$ofile" || \
  3109.     (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
  3110.   chmod +x "$ofile"
  3111. fi
  3112.  
  3113. ])# _LT_AC_LTCONFIG_HACK
  3114.  
  3115. # AC_LIBTOOL_DLOPEN - enable checks for dlopen support
  3116. AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
  3117.  
  3118. # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
  3119. AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
  3120.  
  3121. # AC_ENABLE_SHARED - implement the --enable-shared flag
  3122. # Usage: AC_ENABLE_SHARED[(DEFAULT)]
  3123. #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
  3124. #   `yes'.
  3125. AC_DEFUN([AC_ENABLE_SHARED],
  3126. [define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
  3127. AC_ARG_ENABLE(shared,
  3128. changequote(<<, >>)dnl
  3129. <<  --enable-shared[=PKGS]  build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
  3130. changequote([, ])dnl
  3131. [p=${PACKAGE-default}
  3132. case $enableval in
  3133. yes) enable_shared=yes ;;
  3134. no) enable_shared=no ;;
  3135. *)
  3136.   enable_shared=no
  3137.   # Look at the argument we got.  We use all the common list separators.
  3138.   IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
  3139.   for pkg in $enableval; do
  3140.     if test "X$pkg" = "X$p"; then
  3141.       enable_shared=yes
  3142.     fi
  3143.   done
  3144.   IFS="$ac_save_ifs"
  3145.   ;;
  3146. esac],
  3147. enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
  3148. ])
  3149.  
  3150. # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
  3151. AC_DEFUN([AC_DISABLE_SHARED],
  3152. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  3153. AC_ENABLE_SHARED(no)])
  3154.  
  3155. # AC_ENABLE_STATIC - implement the --enable-static flag
  3156. # Usage: AC_ENABLE_STATIC[(DEFAULT)]
  3157. #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
  3158. #   `yes'.
  3159. AC_DEFUN([AC_ENABLE_STATIC],
  3160. [define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
  3161. AC_ARG_ENABLE(static,
  3162. changequote(<<, >>)dnl
  3163. <<  --enable-static[=PKGS]  build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
  3164. changequote([, ])dnl
  3165. [p=${PACKAGE-default}
  3166. case $enableval in
  3167. yes) enable_static=yes ;;
  3168. no) enable_static=no ;;
  3169. *)
  3170.   enable_static=no
  3171.   # Look at the argument we got.  We use all the common list separators.
  3172.   IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
  3173.   for pkg in $enableval; do
  3174.     if test "X$pkg" = "X$p"; then
  3175.       enable_static=yes
  3176.     fi
  3177.   done
  3178.   IFS="$ac_save_ifs"
  3179.   ;;
  3180. esac],
  3181. enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
  3182. ])
  3183.  
  3184. # AC_DISABLE_STATIC - set the default static flag to --disable-static
  3185. AC_DEFUN([AC_DISABLE_STATIC],
  3186. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  3187. AC_ENABLE_STATIC(no)])
  3188.  
  3189.  
  3190. # AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
  3191. # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
  3192. #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
  3193. #   `yes'.
  3194. AC_DEFUN([AC_ENABLE_FAST_INSTALL],
  3195. [define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
  3196. AC_ARG_ENABLE(fast-install,
  3197. changequote(<<, >>)dnl
  3198. <<  --enable-fast-install[=PKGS]  optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
  3199. changequote([, ])dnl
  3200. [p=${PACKAGE-default}
  3201. case $enableval in
  3202. yes) enable_fast_install=yes ;;
  3203. no) enable_fast_install=no ;;
  3204. *)
  3205.   enable_fast_install=no
  3206.   # Look at the argument we got.  We use all the common list separators.
  3207.   IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
  3208.   for pkg in $enableval; do
  3209.     if test "X$pkg" = "X$p"; then
  3210.       enable_fast_install=yes
  3211.     fi
  3212.   done
  3213.   IFS="$ac_save_ifs"
  3214.   ;;
  3215. esac],
  3216. enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
  3217. ])
  3218.  
  3219. # AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
  3220. AC_DEFUN([AC_DISABLE_FAST_INSTALL],
  3221. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  3222. AC_ENABLE_FAST_INSTALL(no)])
  3223.  
  3224. # AC_LIBTOOL_PICMODE - implement the --with-pic flag
  3225. # Usage: AC_LIBTOOL_PICMODE[(MODE)]
  3226. #   Where MODE is either `yes' or `no'.  If omitted, it defaults to
  3227. #   `both'.
  3228. AC_DEFUN([AC_LIBTOOL_PICMODE],
  3229. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  3230. pic_mode=ifelse($#,1,$1,default)])
  3231.  
  3232.  
  3233. # AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
  3234. AC_DEFUN([AC_PATH_TOOL_PREFIX],
  3235. [AC_MSG_CHECKING([for $1])
  3236. AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
  3237. [case $MAGIC_CMD in
  3238.   /*)
  3239.   lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
  3240.   ;;
  3241.   ?:/*)
  3242.   lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
  3243.   ;;
  3244.   *)
  3245.   ac_save_MAGIC_CMD="$MAGIC_CMD"
  3246.   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS=":"
  3247. dnl $ac_dummy forces splitting on constant user-supplied paths.
  3248. dnl POSIX.2 word splitting is done only on the output of word expansions,
  3249. dnl not every word.  This closes a longstanding sh security hole.
  3250.   ac_dummy="ifelse([$2], , $PATH, [$2])"
  3251.   for ac_dir in $ac_dummy; do
  3252.     test -z "$ac_dir" && ac_dir=.
  3253.     if test -f $ac_dir/$1; then
  3254.       lt_cv_path_MAGIC_CMD="$ac_dir/$1"
  3255.       if test -n "$file_magic_test_file"; then
  3256.     case $deplibs_check_method in
  3257.     "file_magic "*)
  3258.       file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
  3259.       MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
  3260.       if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
  3261.         egrep "$file_magic_regex" > /dev/null; then
  3262.         :
  3263.       else
  3264.         cat <<EOF 1>&2
  3265.  
  3266. *** Warning: the command libtool uses to detect shared libraries,
  3267. *** $file_magic_cmd, produces output that libtool cannot recognize.
  3268. *** The result is that libtool may fail to recognize shared libraries
  3269. *** as such.  This will affect the creation of libtool libraries that
  3270. *** depend on shared libraries, but programs linked with such libtool
  3271. *** libraries will work regardless of this problem.  Nevertheless, you
  3272. *** may want to report the problem to your system manager and/or to
  3273. *** bug-libtool@gnu.org
  3274.  
  3275. EOF
  3276.       fi ;;
  3277.     esac
  3278.       fi
  3279.       break
  3280.     fi
  3281.   done
  3282.   IFS="$ac_save_ifs"
  3283.   MAGIC_CMD="$ac_save_MAGIC_CMD"
  3284.   ;;
  3285. esac])
  3286. MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
  3287. if test -n "$MAGIC_CMD"; then
  3288.   AC_MSG_RESULT($MAGIC_CMD)
  3289. else
  3290.   AC_MSG_RESULT(no)
  3291. fi
  3292. ])
  3293.  
  3294.  
  3295. # AC_PATH_MAGIC - find a file program which can recognise a shared library
  3296. AC_DEFUN([AC_PATH_MAGIC],
  3297. [AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
  3298. AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH)
  3299. if test -z "$lt_cv_path_MAGIC_CMD"; then
  3300.   if test -n "$ac_tool_prefix"; then
  3301.     AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH)
  3302.   else
  3303.     MAGIC_CMD=:
  3304.   fi
  3305. fi
  3306. ])
  3307.  
  3308.  
  3309. # AC_PROG_LD - find the path to the GNU or non-GNU linker
  3310. AC_DEFUN([AC_PROG_LD],
  3311. [AC_ARG_WITH(gnu-ld,
  3312. [  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
  3313. test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
  3314. AC_REQUIRE([AC_PROG_CC])dnl
  3315. AC_REQUIRE([AC_CANONICAL_HOST])dnl
  3316. AC_REQUIRE([AC_CANONICAL_BUILD])dnl
  3317. AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
  3318. ac_prog=ld
  3319. if test "$GCC" = yes; then
  3320.   # Check if gcc -print-prog-name=ld gives a path.
  3321.   AC_MSG_CHECKING([for ld used by GCC])
  3322.   case $host in
  3323.   *-*-mingw*)
  3324.     # gcc leaves a trailing carriage return which upsets mingw
  3325.     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
  3326.   *)
  3327.     ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
  3328.   esac
  3329.   case $ac_prog in
  3330.     # Accept absolute paths.
  3331.     [[\\/]]* | [[A-Za-z]]:[[\\/]]*)
  3332.       re_direlt='/[[^/]][[^/]]*/\.\./'
  3333.       # Canonicalize the path of ld
  3334.       ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
  3335.       while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
  3336.     ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
  3337.       done
  3338.       test -z "$LD" && LD="$ac_prog"
  3339.       ;;
  3340.   "")
  3341.     # If it fails, then pretend we aren't using GCC.
  3342.     ac_prog=ld
  3343.     ;;
  3344.   *)
  3345.     # If it is relative, then search for the first ld in PATH.
  3346.     with_gnu_ld=unknown
  3347.     ;;
  3348.   esac
  3349. elif test "$with_gnu_ld" = yes; then
  3350.   AC_MSG_CHECKING([for GNU ld])
  3351. else
  3352.   AC_MSG_CHECKING([for non-GNU ld])
  3353. fi
  3354. AC_CACHE_VAL(lt_cv_path_LD,
  3355. [if test -z "$LD"; then
  3356.   IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
  3357.   for ac_dir in $PATH; do
  3358.     test -z "$ac_dir" && ac_dir=.
  3359.     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
  3360.       lt_cv_path_LD="$ac_dir/$ac_prog"
  3361.       # Check to see if the program is GNU ld.  I'd rather use --version,
  3362.       # but apparently some GNU ld's only accept -v.
  3363.       # Break only if it was the GNU/non-GNU ld that we prefer.
  3364.       if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
  3365.     test "$with_gnu_ld" != no && break
  3366.       else
  3367.     test "$with_gnu_ld" != yes && break
  3368.       fi
  3369.     fi
  3370.   done
  3371.   IFS="$ac_save_ifs"
  3372. else
  3373.   lt_cv_path_LD="$LD" # Let the user override the test with a path.
  3374. fi])
  3375. LD="$lt_cv_path_LD"
  3376. if test -n "$LD"; then
  3377.   AC_MSG_RESULT($LD)
  3378. else
  3379.   AC_MSG_RESULT(no)
  3380. fi
  3381. test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
  3382. AC_PROG_LD_GNU
  3383. ])
  3384.  
  3385. # AC_PROG_LD_GNU -
  3386. AC_DEFUN([AC_PROG_LD_GNU],
  3387. [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
  3388. [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
  3389. if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
  3390.   lt_cv_prog_gnu_ld=yes
  3391. else
  3392.   lt_cv_prog_gnu_ld=no
  3393. fi])
  3394. with_gnu_ld=$lt_cv_prog_gnu_ld
  3395. ])
  3396.  
  3397. # AC_PROG_LD_RELOAD_FLAG - find reload flag for linker
  3398. #   -- PORTME Some linkers may need a different reload flag.
  3399. AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
  3400. [AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag,
  3401. [lt_cv_ld_reload_flag='-r'])
  3402. reload_flag=$lt_cv_ld_reload_flag
  3403. test -n "$reload_flag" && reload_flag=" $reload_flag"
  3404. ])
  3405.  
  3406. # AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
  3407. #  -- PORTME fill in with the dynamic library characteristics
  3408. AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
  3409. [AC_CACHE_CHECK([how to recognise dependant libraries],
  3410. lt_cv_deplibs_check_method,
  3411. [lt_cv_file_magic_cmd='$MAGIC_CMD'
  3412. lt_cv_file_magic_test_file=
  3413. lt_cv_deplibs_check_method='unknown'
  3414. # Need to set the preceding variable on all platforms that support
  3415. # interlibrary dependencies.
  3416. # 'none' -- dependencies not supported.
  3417. # `unknown' -- same as none, but documents that we really don't know.
  3418. # 'pass_all' -- all dependencies passed with no checks.
  3419. # 'test_compile' -- check by making test program.
  3420. # 'file_magic [[regex]]' -- check by looking for files in library path
  3421. # which responds to the $file_magic_cmd with a given egrep regex.
  3422. # If you have `file' or equivalent on your system and you're not sure
  3423. # whether `pass_all' will *always* work, you probably want this one.
  3424.  
  3425. case $host_os in
  3426. aix4* | aix5*)
  3427.   lt_cv_deplibs_check_method=pass_all
  3428.   ;;
  3429.  
  3430. beos*)
  3431.   lt_cv_deplibs_check_method=pass_all
  3432.   ;;
  3433.  
  3434. bsdi4*)
  3435.   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
  3436.   lt_cv_file_magic_cmd='/usr/bin/file -L'
  3437.   lt_cv_file_magic_test_file=/shlib/libc.so
  3438.   ;;
  3439.  
  3440. cygwin* | mingw* | pw32*)
  3441.   lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
  3442.   lt_cv_file_magic_cmd='$OBJDUMP -f'
  3443.   ;;
  3444.  
  3445. darwin* | rhapsody*)
  3446.   lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
  3447.   lt_cv_file_magic_cmd='/usr/bin/file -L'
  3448.   case "$host_os" in
  3449.   rhapsody* | darwin1.[[012]])
  3450.     lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
  3451.     ;;
  3452.   *) # Darwin 1.3 on
  3453.     lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
  3454.     ;;
  3455.   esac
  3456.   ;;
  3457.  
  3458. freebsd*)
  3459.   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  3460.     case $host_cpu in
  3461.     i*86 )
  3462.       # Not sure whether the presence of OpenBSD here was a mistake.
  3463.       # Let's accept both of them until this is cleared up.
  3464.       lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
  3465.       lt_cv_file_magic_cmd=/usr/bin/file
  3466.       lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
  3467.       ;;
  3468.     esac
  3469.   else
  3470.     lt_cv_deplibs_check_method=pass_all
  3471.   fi
  3472.   ;;
  3473.  
  3474. gnu*)
  3475.   lt_cv_deplibs_check_method=pass_all
  3476.   ;;
  3477.  
  3478. hpux10.20*|hpux11*)
  3479.   lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
  3480.   lt_cv_file_magic_cmd=/usr/bin/file
  3481.   lt_cv_file_magic_test_file=/usr/lib/libc.sl
  3482.   ;;
  3483.  
  3484. irix5* | irix6* | nonstopux*)
  3485.   case $host_os in
  3486.   irix5* | nonstopux*)
  3487.     # this will be overridden with pass_all, but let us keep it just in case
  3488.     lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
  3489.     ;;
  3490.   *)
  3491.     case $LD in
  3492.     *-32|*"-32 ") libmagic=32-bit;;
  3493.     *-n32|*"-n32 ") libmagic=N32;;
  3494.     *-64|*"-64 ") libmagic=64-bit;;
  3495.     *) libmagic=never-match;;
  3496.     esac
  3497.     # this will be overridden with pass_all, but let us keep it just in case
  3498.     lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1"
  3499.     ;;
  3500.   esac
  3501.   lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
  3502.   lt_cv_deplibs_check_method=pass_all
  3503.   ;;
  3504.  
  3505. # This must be Linux ELF.
  3506. linux-gnu*)
  3507.   case $host_cpu in
  3508.   alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* )
  3509.     lt_cv_deplibs_check_method=pass_all ;;
  3510.   *)
  3511.     # glibc up to 2.1.1 does not perform some relocations on ARM
  3512.     lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
  3513.   esac
  3514.   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  3515.   ;;
  3516.  
  3517. netbsd*)
  3518.   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  3519.     lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$'
  3520.   else
  3521.     lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$'
  3522.   fi
  3523.   ;;
  3524.  
  3525. newos6*)
  3526.   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
  3527.   lt_cv_file_magic_cmd=/usr/bin/file
  3528.   lt_cv_file_magic_test_file=/usr/lib/libnls.so
  3529.   ;;
  3530.  
  3531. openbsd*)
  3532.   lt_cv_file_magic_cmd=/usr/bin/file
  3533.   lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
  3534.   if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
  3535.     lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
  3536.   else
  3537.     lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
  3538.   fi
  3539.   ;;
  3540.  
  3541. osf3* | osf4* | osf5*)
  3542.   # this will be overridden with pass_all, but let us keep it just in case
  3543.   lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
  3544.   lt_cv_file_magic_test_file=/shlib/libc.so
  3545.   lt_cv_deplibs_check_method=pass_all
  3546.   ;;
  3547.  
  3548. sco3.2v5*)
  3549.   lt_cv_deplibs_check_method=pass_all
  3550.   ;;
  3551.  
  3552. solaris*)
  3553.   lt_cv_deplibs_check_method=pass_all
  3554.   lt_cv_file_magic_test_file=/lib/libc.so
  3555.   ;;
  3556.  
  3557. sysv5uw[[78]]* | sysv4*uw2*)
  3558.   lt_cv_deplibs_check_method=pass_all
  3559.   ;;
  3560.  
  3561. sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
  3562.   case $host_vendor in
  3563.   motorola)
  3564.     lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
  3565.     lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
  3566.     ;;
  3567.   ncr)
  3568.     lt_cv_deplibs_check_method=pass_all
  3569.     ;;
  3570.   sequent)
  3571.     lt_cv_file_magic_cmd='/bin/file'
  3572.     lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
  3573.     ;;
  3574.   sni)
  3575.     lt_cv_file_magic_cmd='/bin/file'
  3576.     lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
  3577.     lt_cv_file_magic_test_file=/lib/libc.so
  3578.     ;;
  3579.   esac
  3580.   ;;
  3581. esac
  3582. ])
  3583. file_magic_cmd=$lt_cv_file_magic_cmd
  3584. deplibs_check_method=$lt_cv_deplibs_check_method
  3585. ])
  3586.  
  3587.  
  3588. # AC_PROG_NM - find the path to a BSD-compatible name lister
  3589. AC_DEFUN([AC_PROG_NM],
  3590. [AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
  3591. AC_MSG_CHECKING([for BSD-compatible nm])
  3592. AC_CACHE_VAL(lt_cv_path_NM,
  3593. [if test -n "$NM"; then
  3594.   # Let the user override the test.
  3595.   lt_cv_path_NM="$NM"
  3596. else
  3597.   IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
  3598.   for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
  3599.     test -z "$ac_dir" && ac_dir=.
  3600.     tmp_nm=$ac_dir/${ac_tool_prefix}nm
  3601.     if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
  3602.       # Check to see if the nm accepts a BSD-compat flag.
  3603.       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
  3604.       #   nm: unknown option "B" ignored
  3605.       # Tru64's nm complains that /dev/null is an invalid object file
  3606.       if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
  3607.     lt_cv_path_NM="$tmp_nm -B"
  3608.     break
  3609.       elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
  3610.     lt_cv_path_NM="$tmp_nm -p"
  3611.     break
  3612.       else
  3613.     lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
  3614.     continue # so that we can try to find one that supports BSD flags
  3615.       fi
  3616.     fi
  3617.   done
  3618.   IFS="$ac_save_ifs"
  3619.   test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
  3620. fi])
  3621. NM="$lt_cv_path_NM"
  3622. AC_MSG_RESULT([$NM])
  3623. ])
  3624.  
  3625. # AC_CHECK_LIBM - check for math library
  3626. AC_DEFUN([AC_CHECK_LIBM],
  3627. [AC_REQUIRE([AC_CANONICAL_HOST])dnl
  3628. LIBM=
  3629. case $host in
  3630. *-*-beos* | *-*-cygwin* | *-*-pw32*)
  3631.   # These system don't have libm
  3632.   ;;
  3633. *-ncr-sysv4.3*)
  3634.   AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
  3635.   AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
  3636.   ;;
  3637. *)
  3638.   AC_CHECK_LIB(m, main, LIBM="-lm")
  3639.   ;;
  3640. esac
  3641. ])
  3642.  
  3643. # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
  3644. # the libltdl convenience library and LTDLINCL to the include flags for
  3645. # the libltdl header and adds --enable-ltdl-convenience to the
  3646. # configure arguments.  Note that LIBLTDL and LTDLINCL are not
  3647. # AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If DIR is not
  3648. # provided, it is assumed to be `libltdl'.  LIBLTDL will be prefixed
  3649. # with '${top_builddir}/' and LTDLINCL will be prefixed with
  3650. # '${top_srcdir}/' (note the single quotes!).  If your package is not
  3651. # flat and you're not using automake, define top_builddir and
  3652. # top_srcdir appropriately in the Makefiles.
  3653. AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
  3654. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  3655.   case $enable_ltdl_convenience in
  3656.   no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
  3657.   "") enable_ltdl_convenience=yes
  3658.       ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
  3659.   esac
  3660.   LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
  3661.   LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
  3662.   # For backwards non-gettext consistent compatibility...
  3663.   INCLTDL="$LTDLINCL"
  3664. ])
  3665.  
  3666. # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
  3667. # the libltdl installable library and LTDLINCL to the include flags for
  3668. # the libltdl header and adds --enable-ltdl-install to the configure
  3669. # arguments.  Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is
  3670. # AC_CONFIG_SUBDIRS called.  If DIR is not provided and an installed
  3671. # libltdl is not found, it is assumed to be `libltdl'.  LIBLTDL will
  3672. # be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed
  3673. # with '${top_srcdir}/' (note the single quotes!).  If your package is
  3674. # not flat and you're not using automake, define top_builddir and
  3675. # top_srcdir appropriately in the Makefiles.
  3676. # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
  3677. AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
  3678. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  3679.   AC_CHECK_LIB(ltdl, main,
  3680.   [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
  3681.   [if test x"$enable_ltdl_install" = xno; then
  3682.      AC_MSG_WARN([libltdl not installed, but installation disabled])
  3683.    else
  3684.      enable_ltdl_install=yes
  3685.    fi
  3686.   ])
  3687.   if test x"$enable_ltdl_install" = x"yes"; then
  3688.     ac_configure_args="$ac_configure_args --enable-ltdl-install"
  3689.     LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
  3690.     LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
  3691.   else
  3692.     ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
  3693.     LIBLTDL="-lltdl"
  3694.     LTDLINCL=
  3695.   fi
  3696.   # For backwards non-gettext consistent compatibility...
  3697.   INCLTDL="$LTDLINCL"
  3698. ])
  3699.  
  3700. # old names
  3701. AC_DEFUN([AM_PROG_LIBTOOL],   [AC_PROG_LIBTOOL])
  3702. AC_DEFUN([AM_ENABLE_SHARED],  [AC_ENABLE_SHARED($@)])
  3703. AC_DEFUN([AM_ENABLE_STATIC],  [AC_ENABLE_STATIC($@)])
  3704. AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
  3705. AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
  3706. AC_DEFUN([AM_PROG_LD],        [AC_PROG_LD])
  3707. AC_DEFUN([AM_PROG_NM],        [AC_PROG_NM])
  3708.  
  3709. # This is just to silence aclocal about the macro not being used
  3710. ifelse([AC_DISABLE_FAST_INSTALL])
  3711.  
  3712.